#include "satellite-stats-frame-type-usage-helper.h"
Public Member Functions | |
SatStatsFrameTypeUsageHelper (Ptr< const SatHelper > satHelper) | |
Constructor. More... | |
virtual | ~SatStatsFrameTypeUsageHelper () |
/ Destructor. More... | |
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) |
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... | |
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... | |
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 | 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 |
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 | |
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) |
Definition at line 42 of file satellite-stats-frame-type-usage-helper.h.
ns3::SatStatsFrameTypeUsageHelper::SatStatsFrameTypeUsageHelper | ( | Ptr< const SatHelper > | satHelper | ) |
Constructor.
satHelper | Satellite helper instance |
Definition at line 58 of file satellite-stats-frame-type-usage-helper.cc.
|
virtual |
/ Destructor.
Definition at line 65 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 85 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 267 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 259 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 237 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 71 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 66 of file satellite-stats-frame-type-usage-helper.h.
Referenced by DoInstall(), and GetFrameTypeId().
|
private |
The aggregator created by this helper.
Definition at line 107 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 104 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 98 of file satellite-stats-frame-type-usage-helper.h.
Referenced by DoInstall(), FrameTypeUsageCallback(), and GetTypeId().