A Discrete-Event Network Simulator
API
ns3::PyViz Class Reference

helper class to be used by the visualizer More...

#include "pyviz.h"

+ Collaboration diagram for ns3::PyViz:

Classes

struct  LastPacketsSample
 LastPacketsSample structure. More...
 
struct  NetDeviceStatistics
 NetDeviceStatistics structure. More...
 
struct  NodeStatistics
 NodeStatistics structure. More...
 
struct  PacketCaptureOptions
 PacketCaptureOptions structure. More...
 
struct  PacketDropSample
 PacketDropSample structure. More...
 
struct  PacketSample
 PacketSample structure. More...
 
struct  RxPacketSample
 RxPacketSample structure. More...
 
struct  TransmissionSample
 TransmissionSample structure. More...
 
struct  TransmissionSampleKey
 TransmissionSampleKey structure. More...
 
struct  TransmissionSampleValue
 TransmissionSampleValue structure. More...
 
struct  TxPacketSample
 TxPacketSample structure. More...
 
struct  TxRecordValue
 TxRecordValue structure. More...
 

Public Types

enum  PacketCaptureMode { PACKET_CAPTURE_DISABLED = 1 , PACKET_CAPTURE_FILTER_HEADERS_OR , PACKET_CAPTURE_FILTER_HEADERS_AND }
 PacketCaptureMode enumeration. More...
 
typedef std::vector< PacketDropSamplePacketDropSampleList
 PacketDropSampleList typedef. More...
 
typedef std::vector< TransmissionSampleTransmissionSampleList
 TransmissionSampleList typedef. More...
 

Public Member Functions

 PyViz ()
 
 ~PyViz ()
 
LastPacketsSample GetLastPackets (uint32_t nodeId) const
 Get last packets function. More...
 
std::vector< NodeStatisticsGetNodesStatistics () const
 Get node statistics. More...
 
PacketDropSampleList GetPacketDropSamples () const
 Get packet drop samples. More...
 
std::vector< std::string > GetPauseMessages () const
 Get pause message function. More...
 
TransmissionSampleList GetTransmissionSamples () const
 Get transmission samples. More...
 
void RegisterCsmaLikeDevice (const std::string &deviceTypeName)
 Register CSMA like device function. More...
 
void RegisterDropTracePath (const std::string &tracePath)
 Register drop trace path function. More...
 
void RegisterPointToPointLikeDevice (const std::string &deviceTypeName)
 Register point to point like device function. More...
 
void RegisterWifiLikeDevice (const std::string &deviceTypeName)
 Register WIFI like device function. More...
 
void SetNodesOfInterest (std::set< uint32_t > nodes)
 Set nodes of interest function. More...
 
void SetPacketCaptureOptions (uint32_t nodeId, PacketCaptureOptions options)
 Set packet capture options function. More...
 
void SimulatorRunUntil (Time time)
 Run simulation until a given (simulated, absolute) time is reached. More...
 

Static Public Member Functions

static void LineClipping (double boundsX1, double boundsY1, double boundsX2, double boundsY2, double &lineX1, double &lineY1, double &lineX2, double &lineY2)
 Utility function - clips a line to a bounding box. More...
 
static void Pause (const std::string &message)
 Pause function. More...
 

Private Types

typedef std::pair< Ptr< Channel >, uint32_t > TxRecordKey
 TxRecordKey typedef. More...
 

Private Member Functions

void CallbackStopSimulation ()
 Stop simulation callback function. More...
 
void DoPause (const std::string &message)
 Do pause function. More...
 
NetDeviceStatisticsFindNetDeviceStatistics (int node, int interface)
 Find net device statistics function. More...
 
bool GetPacketCaptureOptions (uint32_t nodeId, const PacketCaptureOptions **outOptions) const
 Get packet capture options function. More...
 
void TraceDevQueueDrop (std::string context, Ptr< const Packet > packet)
 Queue drop trace callback function. More...
 
void TraceIpv4Drop (std::string context, const ns3::Ipv4Header &hdr, Ptr< const Packet > packet, ns3::Ipv4L3Protocol::DropReason reason, Ptr< Ipv4 > dummy_ipv4, uint32_t interface)
 Ipv4 drop trace callback function. More...
 
void TraceNetDevPromiscRxCsma (std::string context, Ptr< const Packet > packet)
 CSMA promiscuous receive function. More...
 
void TraceNetDevRxCommon (const std::string &context, Ptr< const Packet > packet, const Mac48Address &source)
 Network receive common trace callback function. More...
 
void TraceNetDevRxCsma (std::string context, Ptr< const Packet > packet)
 CSMA receive trace callback function. More...
 
void TraceNetDevRxLte (std::string context, Ptr< const Packet > packet, const Mac48Address &source)
 LTE receive trace callback function. More...
 
void TraceNetDevRxPointToPoint (std::string context, Ptr< const Packet > packet)
 Point to point receive trace callback function. More...
 
void TraceNetDevRxWifi (std::string context, Ptr< const Packet > packet)
 Wi-Fi receive trace callback function. More...
 
void TraceNetDevRxWimax (std::string context, Ptr< const Packet > packet, const Mac48Address &source)
 WiMax transmit trace callback function. More...
 
void TraceNetDevTxCommon (const std::string &context, Ptr< const Packet > packet, const Mac48Address &destination)
 Network transmit common trace callback function. More...
 
void TraceNetDevTxCsma (std::string context, Ptr< const Packet > packet)
 CSMA transmit trace callback function. More...
 
void TraceNetDevTxLte (std::string context, Ptr< const Packet > packet, const Mac48Address &destination)
 LTE transmit trace callback function. More...
 
void TraceNetDevTxPointToPoint (std::string context, Ptr< const Packet > packet)
 Point to point transmit trace callback function. More...
 
void TraceNetDevTxWifi (std::string context, Ptr< const Packet > packet)
 Wi-Fi transmit trace callback function. More...
 
void TraceNetDevTxWimax (std::string context, Ptr< const Packet > packet, const Mac48Address &destination)
 WiMax transmit trace callback function. More...
 

Static Private Member Functions

static bool FilterPacket (Ptr< const Packet > packet, const PacketCaptureOptions &options)
 Filter packet function. More...
 

Private Attributes

std::map< uint32_t, LastPacketsSamplem_lastPackets
 last packets More...
 
std::set< uint32_t > m_nodesOfInterest
 list of node IDs whose transmissions will be monitored More...
 
std::map< uint32_t, std::vector< NetDeviceStatistics > > m_nodesStatistics
 node statistics More...
 
std::map< uint32_t, PacketCaptureOptionsm_packetCaptureOptions
 packet capture options More...
 
std::map< Ptr< Node >, uint32_t > m_packetDrops
 packet drops More...
 
std::map< uint32_t, Timem_packetsOfInterest
 list of packet UIDs that will be monitored More...
 
std::vector< std::string > m_pauseMessages
 pause message More...
 
Time m_runUntil
 run until time More...
 
bool m_stop
 stop? More...
 
std::map< TransmissionSampleKey, TransmissionSampleValuem_transmissionSamples
 transmission samples More...
 
std::map< TxRecordKey, TxRecordValuem_txRecords
 transmit records More...
 

Detailed Description

helper class to be used by the visualizer

Internal:

This class is not meant to be used by simulations. It is only meant to be used by the visualizer tool (PyViz). The only reason it is public is because Python bindings for it are needed, otherwise it should be considered private.

Definition at line 51 of file pyviz.h.

Member Typedef Documentation

◆ PacketDropSampleList

PacketDropSampleList typedef.

Definition at line 120 of file pyviz.h.

◆ TransmissionSampleList

TransmissionSampleList typedef.

Definition at line 106 of file pyviz.h.

◆ TxRecordKey

typedef std::pair<Ptr<Channel>, uint32_t> ns3::PyViz::TxRecordKey
private

TxRecordKey typedef.

Definition at line 268 of file pyviz.h.

Member Enumeration Documentation

◆ PacketCaptureMode

PacketCaptureMode enumeration.

Enumerator
PACKET_CAPTURE_DISABLED 
PACKET_CAPTURE_FILTER_HEADERS_OR 
PACKET_CAPTURE_FILTER_HEADERS_AND 

Definition at line 200 of file pyviz.h.

Constructor & Destructor Documentation

◆ PyViz()

◆ ~PyViz()

ns3::PyViz::~PyViz ( )

Definition at line 245 of file pyviz.cc.

References ns3::g_visualizer, NS_ASSERT, and NS_LOG_FUNCTION_NOARGS.

Member Function Documentation

◆ CallbackStopSimulation()

void ns3::PyViz::CallbackStopSimulation ( )
private

Stop simulation callback function.

Definition at line 279 of file pyviz.cc.

References m_runUntil, m_stop, ns3::Simulator::Now(), NS_LOG_FUNCTION_NOARGS, ns3::Seconds(), and ns3::Simulator::Stop().

Referenced by SimulatorRunUntil().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DoPause()

void ns3::PyViz::DoPause ( const std::string &  message)
private

Do pause function.

Parameters
messagethe pause message

Definition at line 254 of file pyviz.cc.

References ns3::g_visualizer, m_pauseMessages, m_stop, ns3::Simulator::Now(), NS_LOG_LOGIC, and ns3::Time::S.

Referenced by Pause().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FilterPacket()

bool ns3::PyViz::FilterPacket ( Ptr< const Packet packet,
const PacketCaptureOptions options 
)
staticprivate

Filter packet function.

Parameters
packetthe packet
optionsthe capture options
Returns
true if successful

Definition at line 417 of file pyviz.cc.

References ns3::Packet::BeginItem(), ns3::PacketMetadata::ItemIterator::HasNext(), ns3::PyViz::PacketCaptureOptions::headers, ns3::PyViz::PacketCaptureOptions::mode, ns3::PacketMetadata::ItemIterator::Next(), NS_FATAL_ERROR, PACKET_CAPTURE_DISABLED, PACKET_CAPTURE_FILTER_HEADERS_AND, PACKET_CAPTURE_FILTER_HEADERS_OR, and ns3::PacketMetadata::Item::tid.

Referenced by TraceDevQueueDrop(), TraceNetDevRxCommon(), and TraceNetDevTxCommon().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FindNetDeviceStatistics()

PyViz::NetDeviceStatistics & ns3::PyViz::FindNetDeviceStatistics ( int  node,
int  interface 
)
inlineprivate

Find net device statistics function.

Parameters
nodethe node
interfacethe interface number
Returns
the device statistics

Definition at line 384 of file pyviz.cc.

References ns3::NodeList::GetNode(), and m_nodesStatistics.

Referenced by TraceNetDevRxCommon(), and TraceNetDevTxCommon().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetLastPackets()

PyViz::LastPacketsSample ns3::PyViz::GetLastPackets ( uint32_t  nodeId) const

Get last packets function.

Parameters
nodeIdthe node ID
Returns
the last packets

Definition at line 913 of file pyviz.cc.

References m_lastPackets, and NS_LOG_DEBUG.

◆ GetNodesStatistics()

std::vector< PyViz::NodeStatistics > ns3::PyViz::GetNodesStatistics ( ) const

Get node statistics.

Returns
the node statistics

Definition at line 901 of file pyviz.cc.

References m_nodesStatistics.

◆ GetPacketCaptureOptions()

bool ns3::PyViz::GetPacketCaptureOptions ( uint32_t  nodeId,
const PacketCaptureOptions **  outOptions 
) const
private

Get packet capture options function.

Parameters
nodeIdthe node ID
outOptionsthe packet capture options
Returns
true if successful

Definition at line 402 of file pyviz.cc.

References m_packetCaptureOptions.

Referenced by TraceDevQueueDrop(), TraceNetDevRxCommon(), and TraceNetDevTxCommon().

+ Here is the caller graph for this function:

◆ GetPacketDropSamples()

PyViz::PacketDropSampleList ns3::PyViz::GetPacketDropSamples ( ) const

Get packet drop samples.

Returns
the packet drop sample list

Definition at line 877 of file pyviz.cc.

References ns3::PyViz::PacketDropSample::bytes, ns3::Node::GetId(), list, m_packetDrops, NS_LOG_DEBUG, and ns3::PyViz::PacketDropSample::transmitter.

+ Here is the call graph for this function:

◆ GetPauseMessages()

std::vector< std::string > ns3::PyViz::GetPauseMessages ( ) const

Get pause message function.

Returns
the pause message

Definition at line 270 of file pyviz.cc.

References ns3::g_visualizer, m_pauseMessages, ns3::Simulator::Now(), NS_LOG_LOGIC, and ns3::Time::S.

+ Here is the call graph for this function:

◆ GetTransmissionSamples()

PyViz::TransmissionSampleList ns3::PyViz::GetTransmissionSamples ( ) const

Get transmission samples.

Returns
the transmission sample list

Definition at line 857 of file pyviz.cc.

References ns3::PyViz::TransmissionSample::bytes, ns3::PyViz::TransmissionSample::channel, ns3::Node::GetId(), list, m_transmissionSamples, NS_LOG_DEBUG, ns3::PyViz::TransmissionSample::receiver, and ns3::PyViz::TransmissionSample::transmitter.

+ Here is the call graph for this function:

◆ LineClipping()

void ns3::PyViz::LineClipping ( double  boundsX1,
double  boundsY1,
double  boundsX2,
double  boundsY2,
double &  lineX1,
double &  lineY1,
double &  lineX2,
double &  lineY2 
)
static

Utility function - clips a line to a bounding box.

Parameters
[in]boundsX1Bounding box, minimum X coord
[in]boundsY1Bounding box, minimum Y coord
[in]boundsX2Bounding box, maximum X coord
[in]boundsY2Bounding box, maximum Y coord
[in,out]lineX1Line, minimum X coord (any on input, clipped to the bounding box on output)
[in,out]lineY1Line, minimum Y coord (any on input, clipped to the bounding box on output)
[in,out]lineX2Line, maximum X coord (any on input, clipped to the bounding box on output)
[in,out]lineY2Line, maximum Y coord (any on input, clipped to the bounding box on output)

Definition at line 1602 of file pyviz.cc.

◆ Pause()

void ns3::PyViz::Pause ( const std::string &  message)
static

Pause function.

Parameters
messagethe pause message

Definition at line 263 of file pyviz.cc.

References DoPause(), ns3::g_visualizer, and NS_ASSERT.

+ Here is the call graph for this function:

◆ RegisterCsmaLikeDevice()

void ns3::PyViz::RegisterCsmaLikeDevice ( const std::string &  deviceTypeName)

Register CSMA like device function.

Parameters
deviceTypeNamethe device type name

Definition at line 184 of file pyviz.cc.

References ns3::Config::Connect(), ns3::TypeId::LookupByName(), ns3::MakeCallback(), TraceNetDevPromiscRxCsma(), TraceNetDevRxCsma(), and TraceNetDevTxCsma().

+ Here is the call graph for this function:

◆ RegisterDropTracePath()

void ns3::PyViz::RegisterDropTracePath ( const std::string &  tracePath)

Register drop trace path function.

Parameters
tracePaththe path to trace

Definition at line 240 of file pyviz.cc.

References ns3::Config::Connect(), ns3::MakeCallback(), and TraceDevQueueDrop().

+ Here is the call graph for this function:

◆ RegisterPointToPointLikeDevice()

void ns3::PyViz::RegisterPointToPointLikeDevice ( const std::string &  deviceTypeName)

Register point to point like device function.

Parameters
deviceTypeNamethe device type name

Definition at line 216 of file pyviz.cc.

References ns3::Config::Connect(), ns3::TypeId::LookupByName(), ns3::MakeCallback(), TraceNetDevRxPointToPoint(), and TraceNetDevTxPointToPoint().

+ Here is the call graph for this function:

◆ RegisterWifiLikeDevice()

void ns3::PyViz::RegisterWifiLikeDevice ( const std::string &  deviceTypeName)

Register WIFI like device function.

Parameters
deviceTypeNamethe device type name

Definition at line 202 of file pyviz.cc.

References ns3::Config::Connect(), ns3::TypeId::LookupByName(), ns3::MakeCallback(), TraceNetDevRxWifi(), and TraceNetDevTxWifi().

+ Here is the call graph for this function:

◆ SetNodesOfInterest()

void ns3::PyViz::SetNodesOfInterest ( std::set< uint32_t >  nodes)

Set nodes of interest function.

Parameters
nodesthe collection of nodes

Definition at line 895 of file pyviz.cc.

References m_nodesOfInterest, and nodes.

◆ SetPacketCaptureOptions()

void ns3::PyViz::SetPacketCaptureOptions ( uint32_t  nodeId,
PacketCaptureOptions  options 
)

Set packet capture options function.

Parameters
nodeIdthe node ID
optionsthe capture options

Definition at line 230 of file pyviz.cc.

References ns3::PyViz::PacketCaptureOptions::headers, m_packetCaptureOptions, ns3::PyViz::PacketCaptureOptions::mode, NS_LOG_DEBUG, and ns3::PyViz::PacketCaptureOptions::numLastPackets.

◆ SimulatorRunUntil()

void ns3::PyViz::SimulatorRunUntil ( Time  time)

Run simulation until a given (simulated, absolute) time is reached.

Parameters
timethe run time

Definition at line 290 of file pyviz.cc.

References CallbackStopSimulation(), ns3::Simulator::GetImplementation(), m_packetDrops, m_packetsOfInterest, m_pauseMessages, m_runUntil, m_stop, m_transmissionSamples, m_txRecords, ns3::Simulator::NO_CONTEXT, ns3::Simulator::Now(), NS_LOG_LOGIC, ns3::Simulator::ScheduleWithContext(), and ns3::Seconds().

+ Here is the call graph for this function:

◆ TraceDevQueueDrop()

void ns3::PyViz::TraceDevQueueDrop ( std::string  context,
Ptr< const Packet packet 
)
private

◆ TraceIpv4Drop()

void ns3::PyViz::TraceIpv4Drop ( std::string  context,
const ns3::Ipv4Header hdr,
Ptr< const Packet packet,
ns3::Ipv4L3Protocol::DropReason  reason,
Ptr< Ipv4 dummy_ipv4,
uint32_t  interface 
)
private

Ipv4 drop trace callback function.

Parameters
contextthe context
hdrthe header
packetthe packet
reasonthe drop reason
dummy_ipv4the dummy Ipv4
interfacethe interface

Definition at line 506 of file pyviz.cc.

References ns3::Packet::AddHeader(), ns3::Packet::Copy(), and TraceDevQueueDrop().

Referenced by PyViz().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevPromiscRxCsma()

void ns3::PyViz::TraceNetDevPromiscRxCsma ( std::string  context,
Ptr< const Packet packet 
)
private

CSMA promiscuous receive function.

Parameters
contextthe context
packetthe packet

Definition at line 807 of file pyviz.cc.

References ns3::EthernetHeader::GetDestination(), NS_ABORT_IF, ns3::NetDevice::PACKET_OTHERHOST, ns3::Packet::PeekHeader(), and TraceNetDevRxCommon().

Referenced by PyViz(), and RegisterCsmaLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevRxCommon()

◆ TraceNetDevRxCsma()

void ns3::PyViz::TraceNetDevRxCsma ( std::string  context,
Ptr< const Packet packet 
)
private

CSMA receive trace callback function.

Parameters
contextthe context
packetthe packet

Definition at line 793 of file pyviz.cc.

References ns3::EthernetHeader::GetSource(), NS_ABORT_IF, ns3::Packet::PeekHeader(), and TraceNetDevRxCommon().

Referenced by PyViz(), and RegisterCsmaLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevRxLte()

void ns3::PyViz::TraceNetDevRxLte ( std::string  context,
Ptr< const Packet packet,
const Mac48Address source 
)
private

LTE receive trace callback function.

Parameters
contextthe context
packetthe packet
sourcethe MAC address of the source

Definition at line 848 of file pyviz.cc.

References NS_LOG_FUNCTION, and TraceNetDevRxCommon().

Referenced by PyViz().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevRxPointToPoint()

void ns3::PyViz::TraceNetDevRxPointToPoint ( std::string  context,
Ptr< const Packet packet 
)
private

Point to point receive trace callback function.

Parameters
contextthe context
packetthe packet

Definition at line 801 of file pyviz.cc.

References TraceNetDevRxCommon().

Referenced by PyViz(), and RegisterPointToPointLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevRxWifi()

void ns3::PyViz::TraceNetDevRxWifi ( std::string  context,
Ptr< const Packet packet 
)
private

Wi-Fi receive trace callback function.

Parameters
contextthe context
packetthe packet

Definition at line 757 of file pyviz.cc.

References ns3::WifiMacHeader::GetAddr2(), ns3::WifiMacHeader::GetAddr3(), ns3::WifiMacHeader::GetAddr4(), ns3::Packet::GetUid(), ns3::WifiMacHeader::IsFromDs(), ns3::WifiMacHeader::IsToDs(), NS_ABORT_IF, NS_LOG_FUNCTION, ns3::Packet::PeekHeader(), and TraceNetDevRxCommon().

Referenced by PyViz(), and RegisterWifiLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevRxWimax()

void ns3::PyViz::TraceNetDevRxWimax ( std::string  context,
Ptr< const Packet packet,
const Mac48Address source 
)
private

WiMax transmit trace callback function.

Parameters
contextthe context
packetthe packet
sourcethe source MAC address

Definition at line 832 of file pyviz.cc.

References NS_LOG_FUNCTION, and TraceNetDevRxCommon().

Referenced by PyViz().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevTxCommon()

◆ TraceNetDevTxCsma()

void ns3::PyViz::TraceNetDevTxCsma ( std::string  context,
Ptr< const Packet packet 
)
private

CSMA transmit trace callback function.

Parameters
contextthe context
packetthe packet

Definition at line 624 of file pyviz.cc.

References ns3::EthernetHeader::GetDestination(), NS_ABORT_IF, ns3::Packet::PeekHeader(), and TraceNetDevTxCommon().

Referenced by PyViz(), and RegisterCsmaLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevTxLte()

void ns3::PyViz::TraceNetDevTxLte ( std::string  context,
Ptr< const Packet packet,
const Mac48Address destination 
)
private

LTE transmit trace callback function.

Parameters
contextthe context
packetthe packet
destinationthe destination MAC address

Definition at line 839 of file pyviz.cc.

References NS_LOG_FUNCTION, and TraceNetDevTxCommon().

Referenced by PyViz().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevTxPointToPoint()

void ns3::PyViz::TraceNetDevTxPointToPoint ( std::string  context,
Ptr< const Packet packet 
)
private

Point to point transmit trace callback function.

Parameters
contextthe context
packetthe packet

Definition at line 632 of file pyviz.cc.

References TraceNetDevTxCommon().

Referenced by PyViz(), and RegisterPointToPointLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevTxWifi()

void ns3::PyViz::TraceNetDevTxWifi ( std::string  context,
Ptr< const Packet packet 
)
private

Wi-Fi transmit trace callback function.

Parameters
contextthe context
packetthe packet

Definition at line 589 of file pyviz.cc.

References ns3::WifiMacHeader::GetAddr1(), ns3::WifiMacHeader::GetAddr3(), ns3::Packet::GetUid(), ns3::WifiMacHeader::IsFromDs(), ns3::WifiMacHeader::IsToDs(), NS_ABORT_IF, NS_LOG_FUNCTION, ns3::Packet::PeekHeader(), and TraceNetDevTxCommon().

Referenced by PyViz(), and RegisterWifiLikeDevice().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceNetDevTxWimax()

void ns3::PyViz::TraceNetDevTxWimax ( std::string  context,
Ptr< const Packet packet,
const Mac48Address destination 
)
private

WiMax transmit trace callback function.

Parameters
contextthe context
packetthe packet
destinationthe destination MAC address

Definition at line 823 of file pyviz.cc.

References NS_LOG_FUNCTION, and TraceNetDevTxCommon().

Referenced by PyViz().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_lastPackets

std::map<uint32_t, LastPacketsSample> ns3::PyViz::m_lastPackets
private

last packets

Definition at line 316 of file pyviz.h.

Referenced by GetLastPackets(), TraceDevQueueDrop(), TraceNetDevRxCommon(), and TraceNetDevTxCommon().

◆ m_nodesOfInterest

std::set<uint32_t> ns3::PyViz::m_nodesOfInterest
private

list of node IDs whose transmissions will be monitored

Definition at line 314 of file pyviz.h.

Referenced by SetNodesOfInterest(), TraceDevQueueDrop(), and TraceNetDevTxCommon().

◆ m_nodesStatistics

std::map<uint32_t, std::vector<NetDeviceStatistics> > ns3::PyViz::m_nodesStatistics
private

node statistics

Definition at line 317 of file pyviz.h.

Referenced by FindNetDeviceStatistics(), and GetNodesStatistics().

◆ m_packetCaptureOptions

std::map<uint32_t, PacketCaptureOptions> ns3::PyViz::m_packetCaptureOptions
private

packet capture options

Definition at line 307 of file pyviz.h.

Referenced by GetPacketCaptureOptions(), and SetPacketCaptureOptions().

◆ m_packetDrops

std::map<Ptr<Node>, uint32_t> ns3::PyViz::m_packetDrops
private

packet drops

Definition at line 312 of file pyviz.h.

Referenced by GetPacketDropSamples(), SimulatorRunUntil(), and TraceDevQueueDrop().

◆ m_packetsOfInterest

std::map<uint32_t, Time> ns3::PyViz::m_packetsOfInterest
private

list of packet UIDs that will be monitored

Definition at line 315 of file pyviz.h.

Referenced by SimulatorRunUntil(), TraceDevQueueDrop(), TraceNetDevRxCommon(), and TraceNetDevTxCommon().

◆ m_pauseMessages

std::vector<std::string> ns3::PyViz::m_pauseMessages
private

pause message

Definition at line 308 of file pyviz.h.

Referenced by DoPause(), GetPauseMessages(), and SimulatorRunUntil().

◆ m_runUntil

Time ns3::PyViz::m_runUntil
private

run until time

Definition at line 459 of file pyviz.h.

Referenced by CallbackStopSimulation(), and SimulatorRunUntil().

◆ m_stop

bool ns3::PyViz::m_stop
private

stop?

Definition at line 458 of file pyviz.h.

Referenced by CallbackStopSimulation(), DoPause(), and SimulatorRunUntil().

◆ m_transmissionSamples

std::map<TransmissionSampleKey, TransmissionSampleValue> ns3::PyViz::m_transmissionSamples
private

transmission samples

Definition at line 311 of file pyviz.h.

Referenced by GetTransmissionSamples(), SimulatorRunUntil(), and TraceNetDevRxCommon().

◆ m_txRecords

std::map<TxRecordKey, TxRecordValue> ns3::PyViz::m_txRecords
private

transmit records

Definition at line 309 of file pyviz.h.

Referenced by SimulatorRunUntil(), TraceNetDevRxCommon(), and TraceNetDevTxCommon().


The documentation for this class was generated from the following files: