ns3::SatStatsLinkRxPowerHelper Class Referenceabstract

Base class for link RX power statistics helpers. More...

#include "satellite-stats-link-rx-power-helper.h"

+ Inheritance diagram for ns3::SatStatsLinkRxPowerHelper:
+ Collaboration diagram for ns3::SatStatsLinkRxPowerHelper:

Public Member Functions

 SatStatsLinkRxPowerHelper (Ptr< const SatHelper > satHelper)
 
virtual ~SatStatsLinkRxPowerHelper ()
 / Destructor. More...
 
Callback< void, double, const Address & > GetTraceSinkCallback () const
 
void InstallProbes ()
 Set up several probes or other means of listeners and connect them to the collectors. More...
 
void RxPowerCallback (double rxPowerDb, const Address &addr)
 Receive inputs from trace sources and forward them to the collector. 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 SatHelperGetSatHelper () 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)
 

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...
 
void DoInstall ()
 Install the probes, collectors, and aggregators necessary to produce the statistics output. More...
 
virtual void DoInstallProbes ()=0
 
void PassSampleToCollector (double rxPowerDb, uint32_t identifier)
 Find a collector with the right identifier and pass a sample data to it. More...
 
void SaveAddressAndIdentifier (Ptr< Node > utNode)
 Save the address and the proper identifier from the given UT node. 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
 

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...
 
Ptr< DataCollectionObject > m_collector
 The collector created by this helper. More...
 
std::map< const Address, uint32_t > m_identifierMap
 Map of address and the identifier associated with it (for return link). More...
 
CollectorMap m_terminalCollectors
 Maintains a list of collectors created by this helper. More...
 

Private Attributes

bool m_averagingMode
 AveragingMode attribute. More...
 
Callback< void, double, const Address & > m_traceSinkCallback
 

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 > GetSatSatGeoNetDevice (Ptr< Node > satNode)
 
static Ptr< NetDevice > GetUtSatNetDevice (Ptr< Node > utNode)
 

Detailed Description

Base class for link RX power statistics helpers.

Definition at line 44 of file satellite-stats-link-rx-power-helper.h.

Constructor & Destructor Documentation

◆ SatStatsLinkRxPowerHelper()

ns3::SatStatsLinkRxPowerHelper::SatStatsLinkRxPowerHelper ( Ptr< const SatHelper satHelper)

Definition at line 59 of file satellite-stats-link-rx-power-helper.cc.

◆ ~SatStatsLinkRxPowerHelper()

ns3::SatStatsLinkRxPowerHelper::~SatStatsLinkRxPowerHelper ( )
virtual

/ Destructor.

Definition at line 66 of file satellite-stats-link-rx-power-helper.cc.

Member Function Documentation

◆ ConnectProbeToCollector()

◆ DoInstall()

◆ DoInstallProbes()

virtual void ns3::SatStatsLinkRxPowerHelper::DoInstallProbes ( )
protectedpure virtual

◆ GetTraceSinkCallback()

Callback< void, double, const Address & > ns3::SatStatsLinkRxPowerHelper::GetTraceSinkCallback ( ) const

◆ GetTypeId()

TypeId ns3::SatStatsLinkRxPowerHelper::GetTypeId ( void  )
static

inherited from ObjectBase base class

Definition at line 72 of file satellite-stats-link-rx-power-helper.cc.

◆ InstallProbes()

void ns3::SatStatsLinkRxPowerHelper::InstallProbes ( )

Set up several probes or other means of listeners and connect them to the collectors.

Definition at line 575 of file satellite-stats-link-rx-power-helper.cc.

References DoInstallProbes().

Referenced by DoInstall().

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

◆ PassSampleToCollector()

void ns3::SatStatsLinkRxPowerHelper::PassSampleToCollector ( double  rxPowerDb,
uint32_t  identifier 
)
protected

◆ RxPowerCallback()

void ns3::SatStatsLinkRxPowerHelper::RxPowerCallback ( double  rxPowerDb,
const Address &  addr 
)

Receive inputs from trace sources and forward them to the collector.

Parameters
rxPowerDbRX power value in dB.
addrAddress of UT

Definition at line 398 of file satellite-stats-link-rx-power-helper.cc.

References m_identifierMap, and PassSampleToCollector().

+ Here is the call graph for this function:

◆ SaveAddressAndIdentifier()

void ns3::SatStatsLinkRxPowerHelper::SaveAddressAndIdentifier ( Ptr< Node >  utNode)
protected

Save the address and the proper identifier from the given UT node.

Parameters
utNodea UT node.

The address of the given node will be saved in the m_identifierMap member variable.

Used in return link statistics. DoInstallProbes() is expected to pass the the UT node of interest into this method.

Definition at line 434 of file satellite-stats-link-rx-power-helper.cc.

References ns3::SatStatsHelper::GetIdentifierForUt(), ns3::SatIdMapper::GetUtMacWithNode(), and m_identifierMap.

Referenced by ns3::SatStatsFwdFeederLinkRxPowerHelper::DoInstallProbes(), ns3::SatStatsFwdUserLinkRxPowerHelper::DoInstallProbes(), ns3::SatStatsRtnFeederLinkRxPowerHelper::DoInstallProbes(), and ns3::SatStatsRtnUserLinkRxPowerHelper::DoInstallProbes().

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

◆ SetAveragingMode()

void ns3::SatStatsLinkRxPowerHelper::SetAveragingMode ( bool  averagingMode)
Parameters
averagingModeaverage all samples before passing them to aggregator.

Definition at line 79 of file satellite-stats-link-rx-power-helper.cc.

References m_averagingMode.

Member Data Documentation

◆ m_aggregator

Ptr<DataCollectionObject> ns3::SatStatsLinkRxPowerHelper::m_aggregator
protected

The aggregator created by this helper.

Definition at line 126 of file satellite-stats-link-rx-power-helper.h.

Referenced by DoInstall().

◆ m_averagingCollector

Ptr<DistributionCollector> ns3::SatStatsLinkRxPowerHelper::m_averagingCollector
protected

The final collector utilized in averaged output (histogram, PDF, and CDF).

Definition at line 129 of file satellite-stats-link-rx-power-helper.h.

Referenced by DoInstall().

◆ m_averagingMode

bool ns3::SatStatsLinkRxPowerHelper::m_averagingMode
private

AveragingMode attribute.

Definition at line 138 of file satellite-stats-link-rx-power-helper.h.

Referenced by ConnectProbeToCollector(), DoInstall(), PassSampleToCollector(), and SetAveragingMode().

◆ m_collector

Ptr<DataCollectionObject> ns3::SatStatsLinkRxPowerHelper::m_collector
protected

The collector created by this helper.

Definition at line 123 of file satellite-stats-link-rx-power-helper.h.

◆ m_identifierMap

std::map<const Address, uint32_t> ns3::SatStatsLinkRxPowerHelper::m_identifierMap
protected

Map of address and the identifier associated with it (for return link).

Definition at line 132 of file satellite-stats-link-rx-power-helper.h.

Referenced by RxPowerCallback(), and SaveAddressAndIdentifier().

◆ m_terminalCollectors

CollectorMap ns3::SatStatsLinkRxPowerHelper::m_terminalCollectors
protected

Maintains a list of collectors created by this helper.

Definition at line 120 of file satellite-stats-link-rx-power-helper.h.

Referenced by ConnectProbeToCollector(), DoInstall(), and PassSampleToCollector().

◆ m_traceSinkCallback

Callback<void, double, const Address&> ns3::SatStatsLinkRxPowerHelper::m_traceSinkCallback
private

Definition at line 136 of file satellite-stats-link-rx-power-helper.h.

Referenced by GetTraceSinkCallback().


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