Base class for jitter statistics helpers. More...
#include "satellite-stats-jitter-helper.h"
Public Member Functions | |
SatStatsJitterHelper (Ptr< const SatHelper > satHelper) | |
virtual | ~SatStatsJitterHelper () |
/ Destructor. More... | |
bool | GetAveragingMode () const |
void | InstallProbes () |
Set up several probes or other means of listeners and connect them to the collectors. More... | |
void | RxJitterCallback (const Time &jitter, const Address &from) |
Receive inputs from trace sources and determine the right collector to forward the inputs to. More... | |
void | SetAveragingMode (bool averagingMode) |
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 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 | |
bool | ConnectProbeToCollector (Ptr< Probe > probe, uint32_t identifier) |
Connect the probe to the right collector. More... | |
bool | DisconnectProbeFromCollector (Ptr< Probe > probe, uint32_t identifier) |
Disconnect the probe from the right collector. More... | |
void | DoInstall () |
Install the probes, collectors, and aggregators necessary to produce the statistics output. More... | |
virtual void | DoInstallProbes ()=0 |
void | PassSampleToCollector (const Time &jitter, uint32_t identifier) |
Find a collector with the right identifier and pass a sample data to it. More... | |
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... | |
Ptr< DistributionCollector > | m_averagingCollector |
The final collector utilized in averaged output (histogram, PDF, and CDF). 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 | |
bool | m_averagingMode |
AveragingMode attribute. More... | |
Additional Inherited Members | |
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... | |
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) |
Base class for jitter statistics helpers.
Definition at line 50 of file satellite-stats-jitter-helper.h.
ns3::SatStatsJitterHelper::SatStatsJitterHelper | ( | Ptr< const SatHelper > | satHelper | ) |
Definition at line 67 of file satellite-stats-jitter-helper.cc.
|
virtual |
/ Destructor.
Definition at line 74 of file satellite-stats-jitter-helper.cc.
|
protected |
Connect the probe to the right collector.
probe | |
identifier |
Definition at line 451 of file satellite-stats-jitter-helper.cc.
References ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), m_averagingMode, 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::SatStatsFwdAppJitterHelper::DoInstallProbes(), ns3::SatStatsFwdDevJitterHelper::DoInstallProbes(), ns3::SatStatsFwdMacJitterHelper::DoInstallProbes(), ns3::SatStatsFwdPhyJitterHelper::DoInstallProbes(), ns3::SatStatsFwdAppJitterHelper::UpdateIdentifierOnProbes(), ns3::SatStatsFwdDevJitterHelper::UpdateIdentifierOnProbes(), ns3::SatStatsFwdMacJitterHelper::UpdateIdentifierOnProbes(), and ns3::SatStatsFwdPhyJitterHelper::UpdateIdentifierOnProbes().
|
protected |
Disconnect the probe from the right collector.
probe | |
identifier |
Definition at line 517 of file satellite-stats-jitter-helper.cc.
References ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), m_averagingMode, 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::SatStatsFwdAppJitterHelper::UpdateIdentifierOnProbes(), ns3::SatStatsFwdDevJitterHelper::UpdateIdentifierOnProbes(), ns3::SatStatsFwdMacJitterHelper::UpdateIdentifierOnProbes(), and ns3::SatStatsFwdPhyJitterHelper::UpdateIdentifierOnProbes().
|
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 109 of file satellite-stats-jitter-helper.cc.
References ns3::SatStatsHelper::CreateAggregator(), ns3::SatStatsHelper::CreateCollectorPerIdentifier(), ns3::SatStatsHelper::GetDistributionHeading(), ns3::SatStatsHelper::GetIdentifierHeading(), ns3::SatStatsHelper::GetName(), ns3::SatStatsHelper::GetOutputFileName(), ns3::SatStatsHelper::GetOutputPath(), ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), ns3::SatStatsHelper::GetTimeHeading(), InstallProbes(), m_aggregator, m_averagingCollector, m_averagingMode, 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, and ns3::SatStatsHelper::OUTPUT_SCATTER_PLOT.
|
protectedpure virtual |
Implemented in ns3::SatStatsRtnPhyJitterHelper, ns3::SatStatsRtnMacJitterHelper, ns3::SatStatsRtnDevJitterHelper, ns3::SatStatsRtnAppJitterHelper, ns3::SatStatsFwdPhyJitterHelper, ns3::SatStatsFwdMacJitterHelper, ns3::SatStatsFwdDevJitterHelper, and ns3::SatStatsFwdAppJitterHelper.
Referenced by InstallProbes().
bool ns3::SatStatsJitterHelper::GetAveragingMode | ( | ) | const |
Definition at line 103 of file satellite-stats-jitter-helper.cc.
References m_averagingMode.
Referenced by GetTypeId().
|
static |
inherited from ObjectBase base class
Definition at line 80 of file satellite-stats-jitter-helper.cc.
References GetAveragingMode(), and SetAveragingMode().
void ns3::SatStatsJitterHelper::InstallProbes | ( | ) |
Set up several probes or other means of listeners and connect them to the collectors.
Definition at line 415 of file satellite-stats-jitter-helper.cc.
References DoInstallProbes().
Referenced by DoInstall().
|
protected |
Find a collector with the right identifier and pass a sample data to it.
jitter | |
identifier |
Definition at line 583 of file satellite-stats-jitter-helper.cc.
References ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), m_averagingMode, 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::SatStatsRtnAppJitterHelper::Ipv4Callback(), and RxJitterCallback().
void ns3::SatStatsJitterHelper::RxJitterCallback | ( | const Time & | jitter, |
const Address & | from | ||
) |
Receive inputs from trace sources and determine the right collector to forward the inputs to.
jitter | packet jitter. |
from | the address of the sender of the packet. |
Used in return link statistics. DoInstallProbes() is expected to connect the right trace sources to this method.
Definition at line 422 of file satellite-stats-jitter-helper.cc.
References ns3::SatStatsHelper::m_identifierMap, and PassSampleToCollector().
Referenced by ns3::SatStatsRtnDevJitterHelper::DoInstallProbes(), ns3::SatStatsRtnMacJitterHelper::DoInstallProbes(), and ns3::SatStatsRtnPhyJitterHelper::DoInstallProbes().
void ns3::SatStatsJitterHelper::SetAveragingMode | ( | bool | averagingMode | ) |
averagingMode | average all samples before passing them to aggregator. |
Definition at line 96 of file satellite-stats-jitter-helper.cc.
References m_averagingMode.
Referenced by GetTypeId().
|
protected |
The aggregator created by this helper.
Definition at line 131 of file satellite-stats-jitter-helper.h.
Referenced by DoInstall().
|
protected |
The final collector utilized in averaged output (histogram, PDF, and CDF).
Definition at line 128 of file satellite-stats-jitter-helper.h.
Referenced by DoInstall().
|
private |
AveragingMode
attribute.
Definition at line 134 of file satellite-stats-jitter-helper.h.
Referenced by ConnectProbeToCollector(), DisconnectProbeFromCollector(), DoInstall(), GetAveragingMode(), PassSampleToCollector(), and SetAveragingMode().
|
protected |
Maintains a list of collectors created by this helper.
Definition at line 125 of file satellite-stats-jitter-helper.h.
Referenced by ConnectProbeToCollector(), DisconnectProbeFromCollector(), DoInstall(), and PassSampleToCollector().