Gather aggregation and configuration path information from registered types. More...
Public Member Functions | |
void | Gather (TypeId tid) |
Gather aggregation and configuration path information for tid. | |
std::vector< std::string > | Get (TypeId tid) const |
std::vector< std::string > | GetNoTypeIds () const |
void | Print (std::ostream &os) const |
Print output in "a -> b" form on the stream. | |
void | RecordAggregationInfo (std::string a, std::string b) |
Record the a -> b aggregation relation. | |
Private Member Functions | |
void | DoGather (TypeId tid) |
Gather attribute, configuration path information for tid. | |
std::string | GetCurrentPath () const |
bool | HasAlreadyBeenProcessed (TypeId tid) const |
void | RecordOutput (TypeId tid) |
Record the current config path for tid. | |
Private Attributes | |
std::vector< std::pair< TypeId, TypeId > > | m_aggregates |
List of aggregation relationships. | |
std::vector< TypeId > | m_alreadyProcessed |
List of TypeIds we've already processed. | |
std::vector< std::string > | m_currentPath |
Current configuration path. | |
std::vector< std::string > | m_noTids |
List of type names without TypeIds, because those modules aren't enabled. | |
std::vector< std::pair< TypeId, std::string > > | m_output |
Configuration path for each TypeId. | |
Gather aggregation and configuration path information from registered types.
Definition at line 310 of file print-introspected-doxygen.cc.
|
private |
Gather attribute, configuration path information for tid.
tid | [in] the TypeId to gather information from |
Definition at line 514 of file print-introspected-doxygen.cc.
References ns3::TypeId::AttributeInformation::checker, DoGather(), ns3::TypeId::GetAttribute(), ns3::TypeId::GetAttributeN(), ns3::TypeId::GetName(), ns3::TypeId::GetRegistered(), ns3::TypeId::GetRegisteredN(), ns3::Object::GetTypeId(), HasAlreadyBeenProcessed(), ns3::TypeId::IsChildOf(), m_aggregates, m_alreadyProcessed, m_currentPath, ns3::TypeId::AttributeInformation::name, NS_LOG_FUNCTION, ns3::PeekPointer(), and RecordOutput().
Referenced by DoGather(), and Gather().
void StaticInformation::Gather | ( | TypeId | tid | ) |
Gather aggregation and configuration path information for tid.
tid | [in] the TypeId to gather information from |
Definition at line 506 of file print-introspected-doxygen.cc.
References DoGather(), m_output, NS_LOG_FUNCTION, and Uniquefy().
Referenced by GetTypicalAggregations().
std::vector< std::string > StaticInformation::Get | ( | TypeId | tid | ) | const |
tid | [in] the TypeId to return information for |
Definition at line 460 of file print-introspected-doxygen.cc.
References m_output, and NS_LOG_FUNCTION.
Referenced by PrintConfigPaths().
|
private |
Definition at line 427 of file print-introspected-doxygen.cc.
References m_currentPath, and NS_LOG_FUNCTION.
Referenced by RecordOutput().
std::vector< std::string > StaticInformation::GetNoTypeIds | ( | ) | const |
Definition at line 498 of file print-introspected-doxygen.cc.
References m_noTids, NS_LOG_FUNCTION, and Uniquefy().
Referenced by GetNameMap().
|
private |
tid | [in] the TypeId to check. |
Definition at line 446 of file print-introspected-doxygen.cc.
References m_alreadyProcessed, and NS_LOG_FUNCTION.
Referenced by DoGather().
void StaticInformation::Print | ( | std::ostream & | os | ) | const |
Print output in "a -> b" form on the stream.
[in,out] | os | The output stream. |
Definition at line 417 of file print-introspected-doxygen.cc.
References m_output, and NS_LOG_FUNCTION.
void StaticInformation::RecordAggregationInfo | ( | std::string | a, |
std::string | b ) |
Record the a -> b aggregation relation.
Definition at line 395 of file print-introspected-doxygen.cc.
References ns3::TypeId::LookupByNameFailSafe(), m_aggregates, m_noTids, and NS_LOG_FUNCTION.
Referenced by GetTypicalAggregations().
|
private |
Record the current config path for tid.
tid | [in] the TypeId to record. |
Definition at line 439 of file print-introspected-doxygen.cc.
References GetCurrentPath(), m_output, and NS_LOG_FUNCTION.
Referenced by DoGather().
List of aggregation relationships.
Definition at line 382 of file print-introspected-doxygen.cc.
Referenced by DoGather(), and RecordAggregationInfo().
|
private |
List of TypeIds we've already processed.
Definition at line 378 of file print-introspected-doxygen.cc.
Referenced by DoGather(), and HasAlreadyBeenProcessed().
|
private |
Current configuration path.
Definition at line 374 of file print-introspected-doxygen.cc.
Referenced by DoGather(), and GetCurrentPath().
|
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 389 of file print-introspected-doxygen.cc.
Referenced by GetNoTypeIds(), and RecordAggregationInfo().
|
private |
Configuration path for each TypeId.
Definition at line 370 of file print-introspected-doxygen.cc.
Referenced by Gather(), Get(), Print(), and RecordOutput().