A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::DataCollector Class Reference

Collects data. More...

#include "data-collector.h"

+ Inheritance diagram for ns3::DataCollector:
+ Collaboration diagram for ns3::DataCollector:

Public Member Functions

 DataCollector ()
 
 ~DataCollector () override
 
void AddDataCalculator (Ptr< DataCalculator > datac)
 Add a DataCalculator object to the DataCollector.
 
void AddMetadata (std::string key, double value)
 Add the key and the value as a pair of strings to the metadata list.
 
void AddMetadata (std::string key, std::string value)
 Add the key and the value as a pair of strings to the metadata list.
 
void AddMetadata (std::string key, uint32_t value)
 Add the key and the value as a pair of strings to the metadata list.
 
DataCalculatorList::iterator DataCalculatorBegin ()
 Returns an iterator to the beginning of the DataCalculator list.
 
DataCalculatorList::iterator DataCalculatorEnd ()
 Returns an iterator to the past-the-end of the DataCalculator list.
 
void DescribeRun (std::string experiment, std::string strategy, std::string input, std::string runID, std::string description="")
 Provide specific parameters to the DataCollector.
 
std::string GetDescription () const
 Return the description label.
 
std::string GetExperimentLabel () const
 Return the experiment label.
 
std::string GetInputLabel () const
 Return the input label.
 
std::string GetRunLabel () const
 Return the runID label.
 
std::string GetStrategyLabel () const
 Return the strategy label.
 
MetadataList::iterator MetadataBegin ()
 Returns an iterator to the beginning of the metadata list.
 
MetadataList::iterator MetadataEnd ()
 Returns an iterator to the past-the-end of the metadata list.
 
- Public Member Functions inherited from ns3::Object
 Object ()
 Constructor.
 
 ~Object () override
 Destructor.
 
void AggregateObject (Ptr< Object > other)
 Aggregate two Objects together.
 
void Dispose ()
 Dispose of this Object.
 
AggregateIterator GetAggregateIterator () const
 Get an iterator to the Objects aggregated to this one.
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
template<typename T >
Ptr< T > GetObject () const
 Get a pointer to the requested aggregated Object.
 
template<>
Ptr< ObjectGetObject () const
 Specialization of () for objects of type ns3::Object.
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 Get a pointer to the requested aggregated Object by TypeId.
 
template<>
Ptr< ObjectGetObject (TypeId tid) const
 Specialization of (TypeId tid) for objects of type ns3::Object.
 
void Initialize ()
 Invoke DoInitialize on all Objects aggregated to this one.
 
bool IsInitialized () const
 Check if the object has been initialized.
 
void UnidirectionalAggregateObject (Ptr< Object > other)
 Aggregate an Object to another Object.
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Default constructor.
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor.
 
uint32_t GetReferenceCount () const
 Get the reference count of the object.
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator.
 
void Ref () const
 Increment the reference count.
 
void Unref () const
 Decrement the reference count.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
virtual TypeId GetInstanceTypeId () const =0
 Get the most derived TypeId for this Object.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Static Public Member Functions

static TypeId GetTypeId ()
 Register this type.
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId ()
 Register this type.
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId ()
 Get the type ID.
 

Protected Member Functions

void DoDispose () override
 Destructor implementation.
 
- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 Copy an Object.
 
virtual void DoDispose ()
 Destructor implementation.
 
virtual void DoInitialize ()
 Initialize() implementation.
 
virtual void NotifyNewAggregate ()
 Notify all Objects aggregated to this one of a new Object being aggregated.
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes.
 
virtual void NotifyConstructionCompleted ()
 Notifier called once the ObjectBase is fully constructed.
 

Private Attributes

DataCalculatorList m_calcList
 List of data calculators.
 
std::string m_description
 Description label.
 
std::string m_experimentLabel
 Experiment label.
 
std::string m_inputLabel
 Input label.
 
MetadataList m_metadata
 List of experiment metadata.
 
std::string m_runLabel
 Run label.
 
std::string m_strategyLabel
 Strategy label.
 

Additional Inherited Members

Detailed Description

Collects data.

Definition at line 49 of file data-collector.h.

Constructor & Destructor Documentation

◆ DataCollector()

DataCollector::DataCollector ( )

Definition at line 33 of file data-collector.cc.

References NS_LOG_FUNCTION.

◆ ~DataCollector()

DataCollector::~DataCollector ( )
override

Definition at line 39 of file data-collector.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

◆ AddDataCalculator()

void DataCollector::AddDataCalculator ( Ptr< DataCalculator datac)

Add a DataCalculator object to the DataCollector.

Parameters
datacDataCalculator object to be added

Definition at line 87 of file data-collector.cc.

References m_calcList, and NS_LOG_FUNCTION.

◆ AddMetadata() [1/3]

void DataCollector::AddMetadata ( std::string  key,
double  value 
)

Add the key and the value as a pair of strings to the metadata list.

Parameters
keyKey value to include
valueValue to include of type double

Definition at line 134 of file data-collector.cc.

References m_metadata, and NS_LOG_FUNCTION.

◆ AddMetadata() [2/3]

void DataCollector::AddMetadata ( std::string  key,
std::string  value 
)

Add the key and the value as a pair of strings to the metadata list.

Parameters
keyKey value to include
valueValue to include of type string

Definition at line 111 of file data-collector.cc.

References m_metadata, and NS_LOG_FUNCTION.

◆ AddMetadata() [3/3]

void DataCollector::AddMetadata ( std::string  key,
uint32_t  value 
)

Add the key and the value as a pair of strings to the metadata list.

Parameters
keyKey value to include
valueValue to include of type uint32_t

Definition at line 121 of file data-collector.cc.

References m_metadata, and NS_LOG_FUNCTION.

◆ DataCalculatorBegin()

DataCalculatorList::iterator DataCollector::DataCalculatorBegin ( )

Returns an iterator to the beginning of the DataCalculator list.

Returns
Iterator pointing to the first value of the DataCalculator list

Definition at line 97 of file data-collector.cc.

References m_calcList.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ DataCalculatorEnd()

DataCalculatorList::iterator DataCollector::DataCalculatorEnd ( )

Returns an iterator to the past-the-end of the DataCalculator list.

Returns
Iterator pointing to the past-the-end element of the DataCalculator list

Definition at line 104 of file data-collector.cc.

References m_calcList.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ DescribeRun()

void DataCollector::DescribeRun ( std::string  experiment,
std::string  strategy,
std::string  input,
std::string  runID,
std::string  description = "" 
)

Provide specific parameters to the DataCollector.

Parameters
experimentLabel for the experiment
strategyLabel for the strategy
inputLabel for the input
runIDLabel for the runID
descriptionDescription

Definition at line 69 of file data-collector.cc.

References experiment(), m_description, m_experimentLabel, m_inputLabel, m_runLabel, m_strategyLabel, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ DoDispose()

void DataCollector::DoDispose ( )
overrideprotectedvirtual

Destructor implementation.

This method is called by Dispose() or by the Object's destructor, whichever comes first.

Subclasses are expected to implement their real destruction code in an overridden version of this method and chain up to their parent's implementation once they are done. i.e, for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose() method.

It is safe to call GetObject() from within this method.

Reimplemented from ns3::Object.

Definition at line 57 of file data-collector.cc.

References ns3::Object::DoDispose(), m_calcList, m_metadata, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ GetDescription()

std::string ns3::DataCollector::GetDescription ( ) const
inline

Return the description label.

Returns
Description label

Definition at line 115 of file data-collector.h.

References m_description.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ GetExperimentLabel()

std::string ns3::DataCollector::GetExperimentLabel ( ) const
inline

Return the experiment label.

Returns
Experiment label

Definition at line 79 of file data-collector.h.

References m_experimentLabel.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ GetInputLabel()

std::string ns3::DataCollector::GetInputLabel ( ) const
inline

Return the input label.

Returns
Input label

Definition at line 97 of file data-collector.h.

References m_inputLabel.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ GetRunLabel()

std::string ns3::DataCollector::GetRunLabel ( ) const
inline

Return the runID label.

Returns
Run label

Definition at line 106 of file data-collector.h.

References m_runLabel.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ GetStrategyLabel()

std::string ns3::DataCollector::GetStrategyLabel ( ) const
inline

Return the strategy label.

Returns
Strategy label

Definition at line 88 of file data-collector.h.

References m_strategyLabel.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId DataCollector::GetTypeId ( )
static

Register this type.

Returns
The TypeId.

Definition at line 47 of file data-collector.cc.

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

◆ MetadataBegin()

MetadataList::iterator DataCollector::MetadataBegin ( )

Returns an iterator to the beginning of the metadata list.

Returns
Iterator pointing to the first value of the metadata list

Definition at line 147 of file data-collector.cc.

References m_metadata.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

◆ MetadataEnd()

MetadataList::iterator DataCollector::MetadataEnd ( )

Returns an iterator to the past-the-end of the metadata list.

Returns
Iterator pointing to the past-the-end element of the metadata list

Definition at line 154 of file data-collector.cc.

References m_metadata.

Referenced by ns3::OmnetDataOutput::Output(), and ns3::SqliteDataOutput::Output().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_calcList

DataCalculatorList ns3::DataCollector::m_calcList
private

List of data calculators.

Definition at line 176 of file data-collector.h.

Referenced by AddDataCalculator(), DataCalculatorBegin(), DataCalculatorEnd(), and DoDispose().

◆ m_description

std::string ns3::DataCollector::m_description
private

Description label.

Definition at line 173 of file data-collector.h.

Referenced by DescribeRun(), and GetDescription().

◆ m_experimentLabel

std::string ns3::DataCollector::m_experimentLabel
private

Experiment label.

Definition at line 169 of file data-collector.h.

Referenced by DescribeRun(), and GetExperimentLabel().

◆ m_inputLabel

std::string ns3::DataCollector::m_inputLabel
private

Input label.

Definition at line 171 of file data-collector.h.

Referenced by DescribeRun(), and GetInputLabel().

◆ m_metadata

MetadataList ns3::DataCollector::m_metadata
private

List of experiment metadata.

Definition at line 175 of file data-collector.h.

Referenced by AddMetadata(), DoDispose(), MetadataBegin(), and MetadataEnd().

◆ m_runLabel

std::string ns3::DataCollector::m_runLabel
private

Run label.

Definition at line 172 of file data-collector.h.

Referenced by DescribeRun(), and GetRunLabel().

◆ m_strategyLabel

std::string ns3::DataCollector::m_strategyLabel
private

Strategy label.

Definition at line 170 of file data-collector.h.

Referenced by DescribeRun(), and GetStrategyLabel().


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