A Discrete-Event Network Simulator
API
StaticInformation Class Reference

Gather aggregation and configuration path information from registered types. More...

+ Collaboration diagram for StaticInformation:

Public Member Functions

void Gather (TypeId tid)
 Gather aggregation and configuration path information for tid. More...
 
std::vector< std::string > Get (TypeId tid) const
 
std::vector< std::string > GetNoTypeIds (void) const
 
void Print (void) const
 Print output in "a -> b" form on std::cout. More...
 
void RecordAggregationInfo (std::string a, std::string b)
 Record the a -> b aggregation relation. More...
 

Private Member Functions

void DoGather (TypeId tid)
 Gather attribute, configuration path information for tid. More...
 
std::string GetCurrentPath (void) const
 
bool HasAlreadyBeenProcessed (TypeId tid) const
 
void RecordOutput (TypeId tid)
 Record the current config path for tid. More...
 

Private Attributes

std::vector< std::pair< TypeId, TypeId > > m_aggregates
 List of aggregation relationships. More...
 
std::vector< TypeIdm_alreadyProcessed
 List of TypeIds we've already processed. More...
 
std::vector< std::string > m_currentPath
 Current configuration path. More...
 
std::vector< std::string > m_noTids
 List of type names without TypeIds, because those modules aren't enabled. More...
 
std::vector< std::pair< TypeId, std::string > > m_output
 Configuration path for each TypeId. More...
 

Detailed Description

Gather aggregation and configuration path information from registered types.

Definition at line 952 of file print-introspected-doxygen.cc.

Member Function Documentation

void StaticInformation::DoGather ( TypeId  tid)
private
void StaticInformation::Gather ( TypeId  tid)

Gather aggregation and configuration path information for tid.

Parameters
tid[in] the TypeId to gather information from

Definition at line 1156 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION, and Uniquefy().

Referenced by GetTypicalAggregations().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::vector< std::string > StaticInformation::Get ( TypeId  tid) const
Returns
the configuration paths for tid
Parameters
tid[in] the TypeId to return information for

Definition at line 1108 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION.

Referenced by PrintConfigPaths().

+ Here is the caller graph for this function:

std::string StaticInformation::GetCurrentPath ( void  ) const
private
Returns
the current configuration path

Definition at line 1071 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION.

std::vector< std::string > StaticInformation::GetNoTypeIds ( void  ) const
Returns
the type names we couldn't aggregate.

Definition at line 1147 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION, and Uniquefy().

Referenced by GetNameMap().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool StaticInformation::HasAlreadyBeenProcessed ( TypeId  tid) const
private
Returns
whether the tid has already been processed
Parameters
tid[in] the TypeId to check.

Definition at line 1093 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION.

void StaticInformation::Print ( void  ) const

Print output in "a -> b" form on std::cout.

Definition at line 1059 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION.

void StaticInformation::RecordAggregationInfo ( std::string  a,
std::string  b 
)

Record the a -> b aggregation relation.

Parameters
a[in] the source(?) TypeId name
b[in] the destination(?) TypeId name

Definition at line 1036 of file print-introspected-doxygen.cc.

References ns3::TypeId::LookupByNameFailSafe(), and NS_LOG_FUNCTION.

Referenced by GetTypicalAggregations().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void StaticInformation::RecordOutput ( TypeId  tid)
private

Record the current config path for tid.

Parameters
tid[in] the TypeId to record.

Definition at line 1085 of file print-introspected-doxygen.cc.

References NS_LOG_FUNCTION.

Member Data Documentation

std::vector<std::pair<TypeId,TypeId> > StaticInformation::m_aggregates
private

List of aggregation relationships.

Definition at line 1023 of file print-introspected-doxygen.cc.

std::vector<TypeId> StaticInformation::m_alreadyProcessed
private

List of TypeIds we've already processed.

Definition at line 1019 of file print-introspected-doxygen.cc.

std::vector<std::string> StaticInformation::m_currentPath
private

Current configuration path.

Definition at line 1015 of file print-introspected-doxygen.cc.

std::vector<std::string> StaticInformation::m_noTids
mutableprivate

List of type names without TypeIds, because those modules aren't enabled.

This is mutable because GetNoTypeIds sorts and uniquifies this list before returning it.

Definition at line 1030 of file print-introspected-doxygen.cc.

std::vector<std::pair<TypeId,std::string> > StaticInformation::m_output
private

Configuration path for each TypeId.

Definition at line 1011 of file print-introspected-doxygen.cc.


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