View | Details | Raw Unified | Return to bug 1645
Collapse All | Expand All

(-)a/src/visualizer/model/pyviz.cc (-64 / +6 lines)
 Lines 579-616    Link Here 
579
}
579
}
580
580
581
void
581
void
582
PyViz::TraceNetDevTxWifi (std::string context, Ptr<const Packet> packet)
582
PyViz::TraceNetDevTxWifi (std::string context, Ptr<const Packet> packet, Mac48Address destination, Mac48Address source)
583
{
583
{
584
  NS_LOG_FUNCTION (context << packet->GetUid () << *packet);
584
  NS_LOG_FUNCTION (context << packet->GetUid () << destination << source);
585
585
  TraceNetDevTxCommon (context, packet, destination);
586
  /*
587
   *  To DS    From DS   Address 1    Address 2    Address 3    Address 4 
588
   *----------------------------------------------------------------------
589
   *    0        0       Destination  Source        BSSID         N/A
590
   *    0        1       Destination  BSSID         Source        N/A
591
   *    1        0       BSSID        Source        Destination   N/A
592
   *    1        1       Receiver     Transmitter   Destination   Source
593
   */
594
  WifiMacHeader hdr;
595
  NS_ABORT_IF (packet->PeekHeader (hdr) == 0);
596
  Mac48Address destinationAddress;
597
  if (hdr.IsToDs () && !hdr.IsFromDs ())
598
    {
599
      destinationAddress = hdr.GetAddr3 ();
600
    }
601
  else if (!hdr.IsToDs () && hdr.IsFromDs ())
602
    {
603
      destinationAddress = hdr.GetAddr1 ();
604
    }
605
  else if (!hdr.IsToDs () && !hdr.IsFromDs ())
606
    {
607
      destinationAddress = hdr.GetAddr1 ();
608
    }
609
  else
610
    {
611
      destinationAddress = hdr.GetAddr3 ();
612
    }
613
  TraceNetDevTxCommon (context, packet, destinationAddress);
614
}
586
}
615
587
616
588
 Lines 748-787    Link Here 
748
}
720
}
749
721
750
void
722
void
751
PyViz::TraceNetDevRxWifi (std::string context, Ptr<const Packet> packet)
723
PyViz::TraceNetDevRxWifi (std::string context, Ptr<const Packet> packet, Mac48Address destination, Mac48Address source)
752
{
724
{
753
  NS_LOG_FUNCTION (context << packet->GetUid ());
725
  NS_LOG_FUNCTION (context << packet->GetUid () << destination << source);
754
726
  TraceNetDevRxCommon (context, packet, source);
755
756
  /*
757
   *  To DS    From DS   Address 1    Address 2    Address 3    Address 4 
758
   *----------------------------------------------------------------------
759
   *    0        0       Destination  Source        BSSID         N/A
760
   *    0        1       Destination  BSSID         Source        N/A
761
   *    1        0       BSSID        Source        Destination   N/A
762
   *    1        1       Receiver     Transmitter   Destination   Source
763
   */
764
  WifiMacHeader hdr;
765
  NS_ABORT_IF (packet->PeekHeader (hdr) == 0);
766
  Mac48Address sourceAddress;
767
  if (hdr.IsToDs () && !hdr.IsFromDs ())
768
    {
769
      sourceAddress = hdr.GetAddr2 ();
770
    }
771
  else if (!hdr.IsToDs () && hdr.IsFromDs ())
772
    {
773
      sourceAddress = hdr.GetAddr3 ();
774
    }
775
  else if (!hdr.IsToDs () && !hdr.IsFromDs ())
776
    {
777
      sourceAddress = hdr.GetAddr2 ();
778
    }
779
  else
780
    {
781
      sourceAddress = hdr.GetAddr4 ();
782
    }
783
784
  TraceNetDevRxCommon (context, packet, sourceAddress);
785
}
727
}
786
728
787
729
(-)a/src/visualizer/model/pyviz.h (-2 / +2 lines)
 Lines 195-202    Link Here 
195
  void TraceNetDevTxCommon (std::string const &context, Ptr<const Packet> packet, Mac48Address const &destination);
195
  void TraceNetDevTxCommon (std::string const &context, Ptr<const Packet> packet, Mac48Address const &destination);
196
  void TraceNetDevRxCommon (std::string const &context, Ptr<const Packet> packet, Mac48Address const &source);
196
  void TraceNetDevRxCommon (std::string const &context, Ptr<const Packet> packet, Mac48Address const &source);
197
197
198
  void TraceNetDevTxWifi (std::string context, Ptr<const Packet> packet);
198
  void TraceNetDevTxWifi (std::string context, Ptr<const Packet> packet, Mac48Address destination, Mac48Address source);
199
  void TraceNetDevRxWifi (std::string context, Ptr<const Packet> packet);
199
  void TraceNetDevRxWifi (std::string context, Ptr<const Packet> packet, Mac48Address destination, Mac48Address source);
200
200
201
  void TraceDevQueueDrop (std::string context, Ptr<const Packet> packet);
201
  void TraceDevQueueDrop (std::string context, Ptr<const Packet> packet);
202
  void TraceIpv4Drop (std::string context, ns3::Ipv4Header const &hdr, Ptr<const Packet> packet,
202
  void TraceIpv4Drop (std::string context, ns3::Ipv4Header const &hdr, Ptr<const Packet> packet,

Return to bug 1645