25 #include "ns3/nstime.h"
26 #include "ns3/object.h"
83 typedef std::map<FlowId, FlowStats>
Stats;
The FlowProbe class is responsible for listening for packet events in a specific point of the simulat...
Stats m_stats
The flow stats.
void AddPacketStats(FlowId flowId, uint32_t packetSize, Time delayFromFirstProbe)
Add a packet data to the flow stats.
FlowProbe(Ptr< FlowMonitor > flowMonitor)
Constructor.
void DoDispose() override
Destructor implementation.
void AddPacketDropStats(FlowId flowId, uint32_t packetSize, uint32_t reasonCode)
Add a packet drop data to the flow stats.
std::map< FlowId, FlowStats > Stats
Container to map FlowId -> FlowStats.
Stats GetStats() const
Get the partial flow statistics stored in this probe.
FlowProbe(const FlowProbe &)=delete
FlowProbe & operator=(const FlowProbe &)=delete
static TypeId GetTypeId()
Register this type.
void SerializeToXmlStream(std::ostream &os, uint16_t indent, uint32_t index) const
Serializes the results to an std::ostream in XML format.
Ptr< FlowMonitor > m_flowMonitor
the FlowMonitor instance
A base class which provides memory management and object aggregation.
Smart pointer class similar to boost::intrusive_ptr.
Simulation virtual time values and global simulation resolution.
a unique identifier for an interface.
uint32_t FlowId
Abstract identifier of a packet flow.
Time Seconds(double value)
Construct a Time in the indicated unit.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Structure to hold the statistics of a flow.
uint64_t bytes
Number of bytes seen of this flow.
uint32_t packets
Number of packets seen of this flow.
Time delayFromFirstProbeSum
divide by 'packets' to get the average delay from the first (entry) probe up to this one (partial del...
std::vector< uint32_t > packetsDropped
packetsDropped[reasonCode] => number of dropped packets
std::vector< uint64_t > bytesDropped
bytesDropped[reasonCode] => number of dropped bytes
static const uint32_t packetSize
Packet size generated at the AP.