#include "satellite-stats-frame-type-usage-helper.h"
Public Member Functions | |
SatStatsFrameTypeUsageHelper (Ptr< const SatHelper > satHelper) | |
Constructor. More... | |
virtual | ~SatStatsFrameTypeUsageHelper () |
/ Destructor. More... | |
![]() | |
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 | GetIdentifierTypeName (IdentifierType_t identifierType) |
static std::string | GetOutputTypeName (OutputType_t outputType) |
static TypeId | GetTypeId () |
inherited from ObjectBase base class More... | |
Static Public Attributes | |
static const std::map< SatEnums::SatBbFrameType_t, uint32_t > | frameTypeIdMap |
Mapping for frame type IDs to integers, in case that SatBbFrameType_t enums are assigned. More... | |
Protected Member Functions | |
void | DoInstall () |
Install the probes, collectors, and aggregators necessary to produce the statistics output. More... | |
std::string | GetIdentifierHeading (std::string dataLabel) const |
Get identifier header for file. More... | |
![]() | |
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 | 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... | |
Private Member Functions | |
void | FrameTypeUsageCallback (std::string context, Ptr< SatBbFrame > bbFrame) |
Static Private Member Functions | |
static uint32_t | GetFrameTypeId (SatEnums::SatBbFrameType_t frameType) |
Get frame type ID. More... | |
Private Attributes | |
Ptr< DataCollectionObject > | m_aggregator |
The aggregator created by this helper. More... | |
std::map< uint32_t, CollectorMap > | m_collectors |
Two-dimensional map of collectors, indexed first by the the frame type identifier and second by the global/gw/beam identifier. More... | |
bool | m_usePercentage |
Flag for using percentage of the frame types in beam/in gw/globally instead of sum by type. More... | |
Additional Inherited Members | |
![]() | |
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 NetDeviceContainer | GetGwSatNetDevice (Ptr< Node > gwNode) |
static Ptr< NetDevice > | GetSatSatOrbiterNetDevice (Ptr< Node > satNode) |
static Ptr< NetDevice > | GetUtSatNetDevice (Ptr< Node > utNode) |
![]() | |
std::map< const Address, uint32_t > | m_identifierMap |
Map of address and the identifier associated with it. More... | |
Definition at line 44 of file satellite-stats-frame-type-usage-helper.h.
ns3::SatStatsFrameTypeUsageHelper::SatStatsFrameTypeUsageHelper | ( | Ptr< const SatHelper > | satHelper | ) |
Constructor.
satHelper | Satellite helper instance |
Definition at line 62 of file satellite-stats-frame-type-usage-helper.cc.
|
virtual |
/ Destructor.
Definition at line 69 of file satellite-stats-frame-type-usage-helper.cc.
|
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 89 of file satellite-stats-frame-type-usage-helper.cc.
References ns3::SatStatsHelper::CreateAggregator(), frameTypeIdMap, FrameTypeUsageCallback(), ns3::SatStatsHelper::GetGwId(), ns3::SatStatsHelper::GetIdentifierForBeam(), GetIdentifierHeading(), ns3::SatStatsHelper::GetIdentifierType(), ns3::SatStatsHelper::GetIdentifierTypeName(), ns3::SatStatsHelper::GetOutputFileName(), ns3::SatStatsHelper::GetOutputType(), ns3::SatStatsHelper::GetOutputTypeName(), ns3::SatStatsHelper::GetSatHelper(), ns3::SatStatsHelper::IDENTIFIER_BEAM, ns3::SatStatsHelper::IDENTIFIER_GLOBAL, ns3::SatStatsHelper::IDENTIFIER_GW, ns3::SatStatsHelper::IDENTIFIER_UT, ns3::SatStatsHelper::IDENTIFIER_UT_USER, m_aggregator, m_collectors, m_usePercentage, ns3::SatConstVariables::MAX_BEAMS_PER_SATELLITE, and ns3::SatStatsHelper::OUTPUT_SCALAR_FILE.
|
private |
context | Beam ID, GW ID or global ID (0) as string |
frameType | Type of the frame |
Definition at line 271 of file satellite-stats-frame-type-usage-helper.cc.
References ns3::SatEnums::DUMMY_FRAME, GetFrameTypeId(), ns3::SatEnums::GetFrameTypeName(), m_collectors, and m_usePercentage.
Referenced by DoInstall().
|
staticprivate |
Get frame type ID.
frameType | Frame type enum |
Definition at line 263 of file satellite-stats-frame-type-usage-helper.cc.
References frameTypeIdMap.
Referenced by FrameTypeUsageCallback().
|
protectedvirtual |
Get identifier header for file.
dataLabel | Label for data column |
Reimplemented from ns3::SatStatsHelper.
Definition at line 241 of file satellite-stats-frame-type-usage-helper.cc.
References ns3::SatStatsHelper::GetIdentifierType(), ns3::SatStatsHelper::IDENTIFIER_BEAM, ns3::SatStatsHelper::IDENTIFIER_GLOBAL, and ns3::SatStatsHelper::IDENTIFIER_GW.
Referenced by DoInstall().
|
static |
inherited from ObjectBase base class
Definition at line 75 of file satellite-stats-frame-type-usage-helper.cc.
References m_usePercentage.
|
static |
Mapping for frame type IDs to integers, in case that SatBbFrameType_t enums are assigned.
Definition at line 68 of file satellite-stats-frame-type-usage-helper.h.
Referenced by DoInstall(), and GetFrameTypeId().
|
private |
The aggregator created by this helper.
Definition at line 109 of file satellite-stats-frame-type-usage-helper.h.
Referenced by DoInstall().
|
private |
Two-dimensional map of collectors, indexed first by the the frame type identifier and second by the global/gw/beam identifier.
Definition at line 106 of file satellite-stats-frame-type-usage-helper.h.
Referenced by DoInstall(), and FrameTypeUsageCallback().
|
private |
Flag for using percentage of the frame types in beam/in gw/globally instead of sum by type.
Definition at line 100 of file satellite-stats-frame-type-usage-helper.h.
Referenced by DoInstall(), FrameTypeUsageCallback(), and GetTypeId().