A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::FileAggregator Class Reference

This aggregator sends values it receives to a file. More...

#include <file-aggregator.h>

+ Inheritance diagram for ns3::FileAggregator:
+ Collaboration diagram for ns3::FileAggregator:

Public Types

enum  FileType { FORMATTED, SPACE_SEPARATED, COMMA_SEPARATED, TAB_SEPARATED }
 The type of file written by the aggregator. More...
 

Public Member Functions

 FileAggregator (const std::string &outputFileName, enum FileType fileType=SPACE_SEPARATED)
 
virtual ~FileAggregator ()
 
void Set10dFormat (const std::string &format)
 Sets the 10D format string for the C-style sprintf() function. More...
 
void Set1dFormat (const std::string &format)
 Sets the 1D format string for the C-style sprintf() function. More...
 
void Set2dFormat (const std::string &format)
 Sets the 2D format string for the C-style sprintf() function. More...
 
void Set3dFormat (const std::string &format)
 Sets the 3D format string for the C-style sprintf() function. More...
 
void Set4dFormat (const std::string &format)
 Sets the 4D format string for the C-style sprintf() function. More...
 
void Set5dFormat (const std::string &format)
 Sets the 5D format string for the C-style sprintf() function. More...
 
void Set6dFormat (const std::string &format)
 Sets the 6D format string for the C-style sprintf() function. More...
 
void Set7dFormat (const std::string &format)
 Sets the 7D format string for the C-style sprintf() function. More...
 
void Set8dFormat (const std::string &format)
 Sets the 8D format string for the C-style sprintf() function. More...
 
void Set9dFormat (const std::string &format)
 Sets the 9D format string for the C-style sprintf() function. More...
 
void SetFileType (enum FileType fileType)
 Set the file type to create, which determines the separator to use when printing values to the file. More...
 
void SetHeading (const std::string &heading)
 Sets the heading string that will be printed on the first line of the file. More...
 
void Write10d (std::string context, double v1, double v2, double v3, double v4, double v5, double v6, double v7, double v8, double v9, double v10)
 Writes 10 values to the file. More...
 
void Write1d (std::string context, double v1)
 Writes 1 value to the file. More...
 
void Write2d (std::string context, double v1, double v2)
 Writes 2 values to the file. More...
 
void Write3d (std::string context, double v1, double v2, double v3)
 Writes 3 values to the file. More...
 
void Write4d (std::string context, double v1, double v2, double v3, double v4)
 Writes 4 values to the file. More...
 
void Write5d (std::string context, double v1, double v2, double v3, double v4, double v5)
 Writes 5 values to the file. More...
 
void Write6d (std::string context, double v1, double v2, double v3, double v4, double v5, double v6)
 Writes 6 values to the file. More...
 
void Write7d (std::string context, double v1, double v2, double v3, double v4, double v5, double v6, double v7)
 Writes 7 values to the file. More...
 
void Write8d (std::string context, double v1, double v2, double v3, double v4, double v5, double v6, double v7, double v8)
 Writes 8 values to the file. More...
 
void Write9d (std::string context, double v1, double v2, double v3, double v4, double v5, double v6, double v7, double v8, double v9)
 Writes 9 values to the file. More...
 
- Public Member Functions inherited from ns3::DataCollectionObject
 DataCollectionObject ()
 
virtual ~DataCollectionObject ()
 
void Disable (void)
 Unset the status of an individual object. More...
 
void Enable (void)
 Set the status of an individual object. More...
 
std::string GetName (void) const
 Get the object's name. More...
 
virtual bool IsEnabled (void) const
 Check the status of an individual object. More...
 
void SetName (std::string name)
 Set the object's name. All spaces are replaced by underscores. More...
 
- Public Member Functions inherited from ns3::Object
 Object ()
 
virtual ~Object ()
 
void AggregateObject (Ptr< Object > other)
 
void Dispose (void)
 Run the DoDispose methods of this object and all the objects aggregated to it. More...
 
AggregateIterator GetAggregateIterator (void) const
 
virtual TypeId GetInstanceTypeId (void) const
 
template<typename T >
Ptr< T > GetObject (void) const
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 
void Initialize (void)
 This method calls the virtual DoInitialize method on all the objects aggregated to this object. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor. More...
 
void GetAttribute (std::string name, AttributeValue &value) const
 
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
 
void SetAttribute (std::string name, const AttributeValue &value)
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::DataCollectionObject
static TypeId GetTypeId ()
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId (void)
 Register this type. More...
 
- Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
static void Cleanup (void)
 Noop. More...
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

std::string m_10dFormat
 Format string for 10D C-style sprintf() function. More...
 
std::string m_1dFormat
 Format string for 1D C-style sprintf() function. More...
 
std::string m_2dFormat
 Format string for 2D C-style sprintf() function. More...
 
std::string m_3dFormat
 Format string for 3D C-style sprintf() function. More...
 
std::string m_4dFormat
 Format string for 4D C-style sprintf() function. More...
 
std::string m_5dFormat
 Format string for 5D C-style sprintf() function. More...
 
std::string m_6dFormat
 Format string for 6D C-style sprintf() function. More...
 
std::string m_7dFormat
 Format string for 7D C-style sprintf() function. More...
 
std::string m_8dFormat
 Format string for 8D C-style sprintf() function. More...
 
std::string m_9dFormat
 Format string for 9D C-style sprintf() function. More...
 
std::ofstream m_file
 Used to write values to the file. More...
 
enum FileType m_fileType
 Determines the kind of file written by the aggregator. More...
 
bool m_hasHeadingBeenSet
 Indicates if the heading line for the file has been set. More...
 
std::string m_heading
 Heading line for the outputfile. More...
 
std::string m_outputFileName
 The file name. More...
 
std::string m_separator
 Printed between values in the file. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 
virtual void DoDispose (void)
 This method is called by Object::Dispose or by the object's destructor, whichever comes first. More...
 
virtual void DoInitialize (void)
 This method is called only once by Object::Initialize. More...
 
virtual void NotifyNewAggregate (void)
 This method is invoked whenever two sets of objects are aggregated together. More...
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 
virtual void NotifyConstructionCompleted (void)
 This method is invoked once all member attributes have been initialized. More...
 
- Protected Attributes inherited from ns3::DataCollectionObject
bool m_enabled
 Object's activation state. More...
 
std::string m_name
 Name of the object within the data collection framework. More...
 

Detailed Description

This aggregator sends values it receives to a file.

Doxygen introspection did not find any typical Config paths.


No Attributes are defined for this type.
No TraceSources are defined for this type.

Definition at line 39 of file file-aggregator.h.

Member Enumeration Documentation

The type of file written by the aggregator.

Enumerator
FORMATTED 
SPACE_SEPARATED 
COMMA_SEPARATED 
TAB_SEPARATED 

Definition at line 43 of file file-aggregator.h.

Constructor & Destructor Documentation

ns3::FileAggregator::FileAggregator ( const std::string &  outputFileName,
enum FileType  fileType = SPACE_SEPARATED 
)
Parameters
outputFileNamename of the file to write.
fileTypetype of file to write.

Constructs a file aggregator that will create a file named outputFileName with values printed as specified by fileType. The default file type is space-separated.

Definition at line 47 of file file-aggregator.cc.

References COMMA_SEPARATED, m_file, m_fileType, m_outputFileName, m_separator, NS_LOG_FUNCTION, and TAB_SEPARATED.

ns3::FileAggregator::~FileAggregator ( )
virtual

Definition at line 83 of file file-aggregator.cc.

References m_file, and NS_LOG_FUNCTION.

Member Function Documentation

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

Get the type ID.

Returns
the object TypeId

Definition at line 38 of file file-aggregator.cc.

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

void ns3::FileAggregator::Set10dFormat ( const std::string &  format)

Sets the 10D format string for the C-style sprintf() function.

Parameters
formatthe 10D format string.

Definition at line 174 of file file-aggregator.cc.

References m_10dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set1dFormat ( const std::string &  format)

Sets the 1D format string for the C-style sprintf() function.

Parameters
formatthe 1D format string.

Definition at line 111 of file file-aggregator.cc.

References m_1dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set2dFormat ( const std::string &  format)

Sets the 2D format string for the C-style sprintf() function.

Parameters
formatthe 2D format string.

Definition at line 118 of file file-aggregator.cc.

References m_2dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set3dFormat ( const std::string &  format)

Sets the 3D format string for the C-style sprintf() function.

Parameters
formatthe 3D format string.

Definition at line 125 of file file-aggregator.cc.

References m_3dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set4dFormat ( const std::string &  format)

Sets the 4D format string for the C-style sprintf() function.

Parameters
formatthe 4D format string.

Definition at line 132 of file file-aggregator.cc.

References m_4dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set5dFormat ( const std::string &  format)

Sets the 5D format string for the C-style sprintf() function.

Parameters
formatthe 5D format string.

Definition at line 139 of file file-aggregator.cc.

References m_5dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set6dFormat ( const std::string &  format)

Sets the 6D format string for the C-style sprintf() function.

Parameters
formatthe 6D format string.

Definition at line 146 of file file-aggregator.cc.

References m_6dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set7dFormat ( const std::string &  format)

Sets the 7D format string for the C-style sprintf() function.

Parameters
formatthe 7D format string.

Definition at line 153 of file file-aggregator.cc.

References m_7dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set8dFormat ( const std::string &  format)

Sets the 8D format string for the C-style sprintf() function.

Parameters
formatthe 8D format string.

Definition at line 160 of file file-aggregator.cc.

References m_8dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Set9dFormat ( const std::string &  format)

Sets the 9D format string for the C-style sprintf() function.

Parameters
formatthe 9D format string.

Definition at line 167 of file file-aggregator.cc.

References m_9dFormat, and NS_LOG_FUNCTION.

void ns3::FileAggregator::SetFileType ( enum FileType  fileType)

Set the file type to create, which determines the separator to use when printing values to the file.

Parameters
fileTypefile type specifies the separator to use in printing the file.

Definition at line 90 of file file-aggregator.cc.

References m_fileType, and NS_LOG_FUNCTION.

void ns3::FileAggregator::SetHeading ( const std::string &  heading)

Sets the heading string that will be printed on the first line of the file.

Parameters
headingthe heading string.

Note that the heading string will only be printed if it has been set by calling this function.

Definition at line 97 of file file-aggregator.cc.

References m_file, m_hasHeadingBeenSet, m_heading, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write10d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4,
double  v5,
double  v6,
double  v7,
double  v8,
double  v9,
double  v10 
)

Writes 10 values to the file.

Parameters
contextspecifies the 10D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.
v5fifth value for the new data point.
v6sixth value for the new data point.
v7seventh value for the new data point.
v8eighth value for the new data point.
v9nineth value for the new data point.
v10tenth value for the new data point.

Definition at line 630 of file file-aggregator.cc.

References FORMATTED, m_10dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write1d ( std::string  context,
double  v1 
)

Writes 1 value to the file.

Parameters
contextspecifies the 1D dataset these values came from.
v1value for the new data point.

Definition at line 181 of file file-aggregator.cc.

References FORMATTED, m_1dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write2d ( std::string  context,
double  v1,
double  v2 
)

Writes 2 values to the file.

Parameters
contextspecifies the 2D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.

Definition at line 219 of file file-aggregator.cc.

References FORMATTED, m_2dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

Referenced by ns3::FileHelper::ConnectProbeToAggregator().

+ Here is the caller graph for this function:

void ns3::FileAggregator::Write3d ( std::string  context,
double  v1,
double  v2,
double  v3 
)

Writes 3 values to the file.

Parameters
contextspecifies the 3D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.

Definition at line 260 of file file-aggregator.cc.

References FORMATTED, m_3dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write4d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4 
)

Writes 4 values to the file.

Parameters
contextspecifies the 4D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.

Definition at line 304 of file file-aggregator.cc.

References FORMATTED, m_4dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write5d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4,
double  v5 
)

Writes 5 values to the file.

Parameters
contextspecifies the 5D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.
v5fifth value for the new data point.

Definition at line 351 of file file-aggregator.cc.

References FORMATTED, m_5dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write6d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4,
double  v5,
double  v6 
)

Writes 6 values to the file.

Parameters
contextspecifies the 6D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.
v5fifth value for the new data point.
v6sixth value for the new data point.

Definition at line 401 of file file-aggregator.cc.

References FORMATTED, m_6dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write7d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4,
double  v5,
double  v6,
double  v7 
)

Writes 7 values to the file.

Parameters
contextspecifies the 7D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.
v5fifth value for the new data point.
v6sixth value for the new data point.
v7seventh value for the new data point.

Definition at line 454 of file file-aggregator.cc.

References FORMATTED, m_7dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write8d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4,
double  v5,
double  v6,
double  v7,
double  v8 
)

Writes 8 values to the file.

Parameters
contextspecifies the 8D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.
v5fifth value for the new data point.
v6sixth value for the new data point.
v7seventh value for the new data point.
v8eighth value for the new data point.

Definition at line 510 of file file-aggregator.cc.

References FORMATTED, m_8dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

void ns3::FileAggregator::Write9d ( std::string  context,
double  v1,
double  v2,
double  v3,
double  v4,
double  v5,
double  v6,
double  v7,
double  v8,
double  v9 
)

Writes 9 values to the file.

Parameters
contextspecifies the 9D dataset these values came from.
v1first value for the new data point.
v2second value for the new data point.
v3third value for the new data point.
v4fourth value for the new data point.
v5fifth value for the new data point.
v6sixth value for the new data point.
v7seventh value for the new data point.
v8eighth value for the new data point.
v9nineth value for the new data point.

Definition at line 569 of file file-aggregator.cc.

References FORMATTED, m_9dFormat, ns3::DataCollectionObject::m_enabled, m_file, m_fileType, m_separator, NS_LOG_DEBUG, and NS_LOG_FUNCTION.

Member Data Documentation

std::string ns3::FileAggregator::m_10dFormat
private

Format string for 10D C-style sprintf() function.

Definition at line 382 of file file-aggregator.h.

Referenced by Set10dFormat(), and Write10d().

std::string ns3::FileAggregator::m_1dFormat
private

Format string for 1D C-style sprintf() function.

Definition at line 373 of file file-aggregator.h.

Referenced by Set1dFormat(), and Write1d().

std::string ns3::FileAggregator::m_2dFormat
private

Format string for 2D C-style sprintf() function.

Definition at line 374 of file file-aggregator.h.

Referenced by Set2dFormat(), and Write2d().

std::string ns3::FileAggregator::m_3dFormat
private

Format string for 3D C-style sprintf() function.

Definition at line 375 of file file-aggregator.h.

Referenced by Set3dFormat(), and Write3d().

std::string ns3::FileAggregator::m_4dFormat
private

Format string for 4D C-style sprintf() function.

Definition at line 376 of file file-aggregator.h.

Referenced by Set4dFormat(), and Write4d().

std::string ns3::FileAggregator::m_5dFormat
private

Format string for 5D C-style sprintf() function.

Definition at line 377 of file file-aggregator.h.

Referenced by Set5dFormat(), and Write5d().

std::string ns3::FileAggregator::m_6dFormat
private

Format string for 6D C-style sprintf() function.

Definition at line 378 of file file-aggregator.h.

Referenced by Set6dFormat(), and Write6d().

std::string ns3::FileAggregator::m_7dFormat
private

Format string for 7D C-style sprintf() function.

Definition at line 379 of file file-aggregator.h.

Referenced by Set7dFormat(), and Write7d().

std::string ns3::FileAggregator::m_8dFormat
private

Format string for 8D C-style sprintf() function.

Definition at line 380 of file file-aggregator.h.

Referenced by Set8dFormat(), and Write8d().

std::string ns3::FileAggregator::m_9dFormat
private

Format string for 9D C-style sprintf() function.

Definition at line 381 of file file-aggregator.h.

Referenced by Set9dFormat(), and Write9d().

std::ofstream ns3::FileAggregator::m_file
private

Used to write values to the file.

Definition at line 359 of file file-aggregator.h.

Referenced by FileAggregator(), SetHeading(), Write10d(), Write1d(), Write2d(), Write3d(), Write4d(), Write5d(), Write6d(), Write7d(), Write8d(), Write9d(), and ~FileAggregator().

enum FileType ns3::FileAggregator::m_fileType
private

Determines the kind of file written by the aggregator.

Definition at line 362 of file file-aggregator.h.

Referenced by FileAggregator(), SetFileType(), Write10d(), Write1d(), Write2d(), Write3d(), Write4d(), Write5d(), Write6d(), Write7d(), Write8d(), and Write9d().

bool ns3::FileAggregator::m_hasHeadingBeenSet
private

Indicates if the heading line for the file has been set.

Definition at line 368 of file file-aggregator.h.

Referenced by SetHeading().

std::string ns3::FileAggregator::m_heading
private

Heading line for the outputfile.

Definition at line 371 of file file-aggregator.h.

Referenced by SetHeading().

std::string ns3::FileAggregator::m_outputFileName
private

The file name.

Definition at line 356 of file file-aggregator.h.

Referenced by FileAggregator().

std::string ns3::FileAggregator::m_separator
private

Printed between values in the file.

Definition at line 365 of file file-aggregator.h.

Referenced by FileAggregator(), Write10d(), Write2d(), Write3d(), Write4d(), Write5d(), Write6d(), Write7d(), Write8d(), and Write9d().


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