#include <packet-probe.h>
Public Member Functions | |
PacketProbe () | |
virtual | ~PacketProbe () |
virtual bool | ConnectByObject (std::string traceSource, Ptr< Object > obj) |
connect to a trace source attribute provided by a given object More... | |
virtual void | ConnectByPath (std::string path) |
connect to a trace source provided by a config path More... | |
void | SetValue (Ptr< const Packet > packet) |
Set a probe value. More... | |
![]() | |
Probe () | |
virtual | ~Probe () |
virtual bool | IsEnabled (void) const |
![]() | |
DataCollectionObject () | |
virtual | ~DataCollectionObject () |
void | Disable (void) |
void | Enable (void) |
Set the status of an individual object. More... | |
std::string | GetName (void) const |
Get the object's name. More... | |
void | SetName (std::string name) |
Set the object's name. All spaces are replaced by underscores. More... | |
![]() | |
Object () | |
virtual | ~Object () |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Initialize (void) |
![]() | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
![]() | |
virtual | ~ObjectBase () |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId () |
static void | SetValueByPath (std::string path, Ptr< const Packet > packet) |
Set a probe value by its name in the Config system. More... | |
![]() | |
static TypeId | GetTypeId () |
![]() | |
static TypeId | GetTypeId () |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static void | Cleanup (void) |
![]() | |
static TypeId | GetTypeId (void) |
Private Member Functions | |
void | TraceSink (Ptr< const Packet > packet) |
Method to connect to an underlying ns3::TraceSource with arguments of type Ptr<const Packet> More... | |
Private Attributes | |
TracedCallback< Ptr< const Packet > > | m_output |
TracedCallback< uint32_t, uint32_t > | m_outputBytes |
Ptr< const Packet > | m_packet |
The traced packet. More... | |
uint32_t | m_packetSizeOld |
The size of the traced packet. More... | |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
virtual void | DoDispose (void) |
virtual void | DoInitialize (void) |
virtual void | NotifyNewAggregate (void) |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
![]() | |
Time | m_start |
Time when logging starts. More... | |
Time | m_stop |
Time when logging stops. More... | |
![]() | |
bool | m_enabled |
Object's activation state. More... | |
std::string | m_name |
Name of the object within the data collection framework. More... | |
This class is designed to probe an underlying ns3 TraceSource exporting a packet. This probe exports a trace source "Output" with argument of type Ptr<const Packet>. This probe exports another trace source "OutputBytes" with arguments of type uint32_t, which is the number of bytes in the packet. The trace sources emit values when either the probed trace source emits a new value, or when SetValue () is called.
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
Definition at line 47 of file packet-probe.h.
ns3::PacketProbe::PacketProbe | ( | ) |
Definition at line 53 of file packet-probe.cc.
References m_packet, and NS_LOG_FUNCTION.
|
virtual |
Definition at line 59 of file packet-probe.cc.
References NS_LOG_FUNCTION.
connect to a trace source attribute provided by a given object
traceSource | the name of the attribute TraceSource to connect to |
obj | ns3::Object to connect to |
Implements ns3::Probe.
Definition at line 86 of file packet-probe.cc.
References ns3::Names::FindPath(), ns3::MakeCallback(), NS_LOG_DEBUG, NS_LOG_FUNCTION, ns3::ObjectBase::TraceConnectWithoutContext(), and TraceSink().
|
virtual |
connect to a trace source provided by a config path
path | Config path to bind to |
Note, if an invalid path is provided, the probe will not be connected to anything.
Implements ns3::Probe.
Definition at line 95 of file packet-probe.cc.
References ns3::Config::ConnectWithoutContext(), ns3::MakeCallback(), NS_LOG_DEBUG, NS_LOG_FUNCTION, and TraceSink().
|
static |
Definition at line 38 of file packet-probe.cc.
References m_output, m_outputBytes, ns3::MakeTraceSourceAccessor(), and ns3::TypeId::SetParent().
Set a probe value.
packet | set the traced packet equal to this |
Definition at line 65 of file packet-probe.cc.
References ns3::Packet::GetSize(), m_output, m_outputBytes, m_packet, m_packetSizeOld, and NS_LOG_FUNCTION.
Set a probe value by its name in the Config system.
path | config path to access the probe |
packet | set the traced packet equal to this |
Definition at line 77 of file packet-probe.cc.
References NS_ASSERT_MSG, and NS_LOG_FUNCTION.
Method to connect to an underlying ns3::TraceSource with arguments of type Ptr<const Packet>
packet | the traced packet |
Definition at line 103 of file packet-probe.cc.
References ns3::Packet::GetSize(), ns3::Probe::IsEnabled(), m_output, m_outputBytes, m_packet, m_packetSizeOld, and NS_LOG_FUNCTION.
Referenced by ConnectByObject(), and ConnectByPath().
|
private |
Definition at line 99 of file packet-probe.h.
Referenced by GetTypeId(), SetValue(), and TraceSink().
|
private |
Definition at line 100 of file packet-probe.h.
Referenced by GetTypeId(), SetValue(), and TraceSink().
The traced packet.
Definition at line 103 of file packet-probe.h.
Referenced by PacketProbe(), SetValue(), and TraceSink().
|
private |
The size of the traced packet.
Definition at line 106 of file packet-probe.h.
Referenced by SetValue(), and TraceSink().