Helper for queue statistics. More...
#include "satellite-stats-queue-helper.h"
Public Types | |
enum | UnitType_t { UNIT_BYTES = 0 , UNIT_NUMBER_OF_PACKETS } |
Public Types inherited from ns3::SatStatsHelper | |
enum | IdentifierType_t { IDENTIFIER_GLOBAL = 0 , IDENTIFIER_GW , IDENTIFIER_BEAM , IDENTIFIER_UT , IDENTIFIER_UT_USER , IDENTIFIER_SLICE , IDENTIFIER_GROUP , IDENTIFIER_SAT , IDENTIFIER_ISL } |
Possible categorization of statistics output. More... | |
enum | OutputType_t { OUTPUT_NONE = 0 , OUTPUT_SCALAR_FILE , OUTPUT_SCATTER_FILE , OUTPUT_HISTOGRAM_FILE , OUTPUT_PDF_FILE , OUTPUT_CDF_FILE , OUTPUT_SCALAR_PLOT , OUTPUT_SCATTER_PLOT , OUTPUT_HISTOGRAM_PLOT , OUTPUT_PDF_PLOT , OUTPUT_CDF_PLOT } |
Possible types and formats of statistics output. More... | |
Public Member Functions | |
SatStatsQueueHelper (Ptr< const SatHelper > satHelper) | |
virtual | ~SatStatsQueueHelper () |
/ Destructor. More... | |
void | EnlistSource () |
Identify the list of source of queue events. More... | |
Time | GetPollInterval () const |
UnitType_t | GetUnitType () const |
void | Poll () |
Retrieve the queue size of every relevant encapsulator and push the values to the right collectors. More... | |
void | SetPollInterval (Time pollInterval) |
void | SetUnitType (UnitType_t unitType) |
Public Member Functions inherited from ns3::SatStatsHelper | |
SatStatsHelper (Ptr< const SatHelper > satHelper) | |
Creates a new helper instance. More... | |
virtual | ~SatStatsHelper () |
/ Destructor. More... | |
IdentifierType_t | GetIdentifierType () const |
std::string | GetName () const |
OutputType_t | GetOutputType () const |
Ptr< const SatHelper > | GetSatHelper () const |
void | Install () |
Install the probes, collectors, and aggregators necessary to produce the statistics output. More... | |
bool | IsInstalled () const |
void | SetIdentifierType (IdentifierType_t identifierType) |
void | SetName (std::string name) |
void | SetOutputType (OutputType_t outputType) |
virtual void | UpdateAddressAndIdentifier (Ptr< Node > utNode) |
Update the address and the proper identifier from the given UT node. More... | |
virtual void | UpdateIdentifierOnProbes () |
Change identifier used on probes, when handovers occur. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
inherited from ObjectBase base class More... | |
static std::string | GetUnitTypeName (UnitType_t unitType) |
Static Public Member Functions inherited from ns3::SatStatsHelper | |
static std::string | GetIdentifierTypeName (IdentifierType_t identifierType) |
static std::string | GetOutputTypeName (OutputType_t outputType) |
static TypeId | GetTypeId () |
inherited from ObjectBase base class More... | |
Protected Member Functions | |
virtual void | DoEnlistSource ()=0 |
void | DoInstall () |
Install the probes, collectors, and aggregators necessary to produce the statistics output. More... | |
virtual void | DoPoll ()=0 |
Retrieve the queue size of every relevant encapsulator and push the values to the right collectors. More... | |
void | PushToCollector (uint32_t identifier, uint32_t value) |
Protected Member Functions inherited from ns3::SatStatsHelper | |
Ptr< DataCollectionObject > | CreateAggregator (std::string aggregatorTypeId, std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue()) |
Create the aggregator according to the output type. More... | |
uint32_t | CreateCollectorPerIdentifier (CollectorMap &collectorMap) const |
Create one collector instance for each identifier in the simulation. More... | |
virtual std::string | GetDistributionHeading (std::string dataLabel) const |
uint32_t | GetGwId (Ptr< Node > gwNode) const |
uint32_t | GetIdentifierForBeam (uint32_t satId, uint32_t beamId) const |
uint32_t | GetIdentifierForGroup (uint32_t groupId) const |
uint32_t | GetIdentifierForGw (Ptr< Node > gwNode) const |
uint32_t | GetIdentifierForIsl (Ptr< Node > satNodeSrc, Ptr< Node > satNodeDst) const |
uint32_t | GetIdentifierForSat (Ptr< Node > satNode) const |
uint32_t | GetIdentifierForUt (Ptr< Node > utNode) const |
uint32_t | GetIdentifierForUtUser (Ptr< Node > utUserNode) const |
virtual std::string | GetIdentifierHeading (std::string dataLabel) const |
virtual std::string | GetOutputFileName () const |
Compute the path and file name where statistics output should be written to. More... | |
virtual std::string | GetOutputPath () const |
uint32_t | GetSatId (Ptr< Node > satNode) const |
virtual std::string | GetTimeHeading (std::string dataLabel) const |
uint32_t | GetUtId (Ptr< Node > utNode) const |
uint32_t | GetUtUserId (Ptr< Node > utUserNode) const |
virtual void | SaveAddressAndIdentifier (Ptr< Node > utNode) |
Save the address and the proper identifier from the given UT node. More... | |
Protected Attributes | |
Ptr< DataCollectionObject > | m_aggregator |
The aggregator created by this helper. More... | |
CollectorMap | m_terminalCollectors |
Maintains a list of collectors created by this helper. More... | |
Protected Attributes inherited from ns3::SatStatsHelper | |
std::map< const Address, uint32_t > | m_identifierMap |
Map of address and the identifier associated with it. More... | |
Private Attributes | |
std::string | m_longLabel |
Time | m_pollInterval |
PollInterval attribute. More... | |
std::string | m_shortLabel |
UnitType_t | m_unitType |
Additional Inherited Members | |
Static Protected Member Functions inherited from ns3::SatStatsHelper | |
static NetDeviceContainer | GetGwSatNetDevice (Ptr< Node > gwNode) |
static Ptr< NetDevice > | GetSatSatOrbiterNetDevice (Ptr< Node > satNode) |
static Ptr< NetDevice > | GetUtSatNetDevice (Ptr< Node > utNode) |
Helper for queue statistics.
Base class.
Definition at line 48 of file satellite-stats-queue-helper.h.
Enumerator | |
---|---|
UNIT_BYTES | |
UNIT_NUMBER_OF_PACKETS |
Definition at line 55 of file satellite-stats-queue-helper.h.
ns3::SatStatsQueueHelper::SatStatsQueueHelper | ( | Ptr< const SatHelper > | satHelper | ) |
Definition at line 80 of file satellite-stats-queue-helper.cc.
|
virtual |
/ Destructor.
Definition at line 90 of file satellite-stats-queue-helper.cc.
|
protectedpure virtual |
Implemented in ns3::SatStatsRtnQueueHelper, and ns3::SatStatsFwdQueueHelper.
Referenced by EnlistSource().
|
protectedvirtual |
Install the probes, collectors, and aggregators necessary to produce the statistics output.
An abstract method of SatStatsHelper which must be implemented by child classes. It will be invoked by Install().
Implements ns3::SatStatsHelper.
Definition at line 152 of file satellite-stats-queue-helper.cc.
References ns3::SatStatsHelper::CreateAggregator(), ns3::SatStatsHelper::CreateCollectorPerIdentifier(), EnlistSource(), ns3::SatStatsHelper::GetDistributionHeading(), ns3::SatStatsHelper::GetIdentifierHeading(), ns3::SatStatsHelper::GetName(), ns3::SatStatsHelper::GetOutputFileName(), ns3::SatStatsHelper::GetOutputPath(), ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), ns3::SatStatsHelper::GetTimeHeading(), m_aggregator, m_longLabel, m_pollInterval, m_shortLabel, m_terminalCollectors, ns3::SatStatsHelper::OUTPUT_CDF_FILE, ns3::SatStatsHelper::OUTPUT_CDF_PLOT, ns3::SatStatsHelper::OUTPUT_HISTOGRAM_FILE, ns3::SatStatsHelper::OUTPUT_HISTOGRAM_PLOT, ns3::SatStatsHelper::OUTPUT_NONE, ns3::SatStatsHelper::OUTPUT_PDF_FILE, ns3::SatStatsHelper::OUTPUT_PDF_PLOT, ns3::SatStatsHelper::OUTPUT_SCALAR_FILE, ns3::SatStatsHelper::OUTPUT_SCALAR_PLOT, ns3::SatStatsHelper::OUTPUT_SCATTER_FILE, ns3::SatStatsHelper::OUTPUT_SCATTER_PLOT, and Poll().
|
protectedpure virtual |
Retrieve the queue size of every relevant encapsulator and push the values to the right collectors.
Implemented in ns3::SatStatsRtnQueueHelper, and ns3::SatStatsFwdQueueHelper.
Referenced by Poll().
void ns3::SatStatsQueueHelper::EnlistSource | ( | ) |
Identify the list of source of queue events.
Definition at line 346 of file satellite-stats-queue-helper.cc.
References DoEnlistSource().
Referenced by DoInstall().
Time ns3::SatStatsQueueHelper::GetPollInterval | ( | ) | const |
Definition at line 146 of file satellite-stats-queue-helper.cc.
References m_pollInterval.
Referenced by GetTypeId().
|
static |
inherited from ObjectBase base class
Definition at line 96 of file satellite-stats-queue-helper.cc.
References GetPollInterval(), and SetPollInterval().
SatStatsQueueHelper::UnitType_t ns3::SatStatsQueueHelper::GetUnitType | ( | ) | const |
Definition at line 133 of file satellite-stats-queue-helper.cc.
References m_unitType.
Referenced by ns3::SatStatsFwdQueueHelper::DoPoll(), and ns3::SatStatsRtnQueueHelper::DoPoll().
|
static |
unitType |
Definition at line 63 of file satellite-stats-queue-helper.cc.
References UNIT_BYTES, and UNIT_NUMBER_OF_PACKETS.
Referenced by SetUnitType().
void ns3::SatStatsQueueHelper::Poll | ( | ) |
Retrieve the queue size of every relevant encapsulator and push the values to the right collectors.
Definition at line 355 of file satellite-stats-queue-helper.cc.
References DoPoll(), and m_pollInterval.
Referenced by DoInstall().
|
protected |
identifier | |
value |
Definition at line 367 of file satellite-stats-queue-helper.cc.
References ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), m_terminalCollectors, ns3::SatStatsHelper::OUTPUT_CDF_FILE, ns3::SatStatsHelper::OUTPUT_CDF_PLOT, ns3::SatStatsHelper::OUTPUT_HISTOGRAM_FILE, ns3::SatStatsHelper::OUTPUT_HISTOGRAM_PLOT, ns3::SatStatsHelper::OUTPUT_PDF_FILE, ns3::SatStatsHelper::OUTPUT_PDF_PLOT, ns3::SatStatsHelper::OUTPUT_SCALAR_FILE, ns3::SatStatsHelper::OUTPUT_SCALAR_PLOT, ns3::SatStatsHelper::OUTPUT_SCATTER_FILE, and ns3::SatStatsHelper::OUTPUT_SCATTER_PLOT.
Referenced by ns3::SatStatsFwdQueueHelper::DoPoll(), and ns3::SatStatsRtnQueueHelper::DoPoll().
void ns3::SatStatsQueueHelper::SetPollInterval | ( | Time | pollInterval | ) |
pollInterval |
Definition at line 139 of file satellite-stats-queue-helper.cc.
References m_pollInterval.
Referenced by GetTypeId().
void ns3::SatStatsQueueHelper::SetUnitType | ( | SatStatsQueueHelper::UnitType_t | unitType | ) |
unitType |
Definition at line 110 of file satellite-stats-queue-helper.cc.
References GetUnitTypeName(), m_longLabel, m_shortLabel, m_unitType, UNIT_BYTES, and UNIT_NUMBER_OF_PACKETS.
Referenced by ns3::SatStatsFwdQueueBytesHelper::SatStatsFwdQueueBytesHelper(), ns3::SatStatsFwdQueuePacketsHelper::SatStatsFwdQueuePacketsHelper(), ns3::SatStatsRtnQueueBytesHelper::SatStatsRtnQueueBytesHelper(), and ns3::SatStatsRtnQueuePacketsHelper::SatStatsRtnQueuePacketsHelper().
|
protected |
The aggregator created by this helper.
Definition at line 136 of file satellite-stats-queue-helper.h.
Referenced by DoInstall().
|
private |
Definition at line 142 of file satellite-stats-queue-helper.h.
Referenced by DoInstall(), and SetUnitType().
|
private |
PollInterval
attribute.
Definition at line 139 of file satellite-stats-queue-helper.h.
Referenced by DoInstall(), GetPollInterval(), Poll(), and SetPollInterval().
|
private |
Definition at line 141 of file satellite-stats-queue-helper.h.
Referenced by DoInstall(), and SetUnitType().
|
protected |
Maintains a list of collectors created by this helper.
Definition at line 133 of file satellite-stats-queue-helper.h.
Referenced by DoInstall(), and PushToCollector().
|
private |
Definition at line 140 of file satellite-stats-queue-helper.h.
Referenced by GetUnitType(), and SetUnitType().