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. More... | |
std::vector< std::string > | Get (TypeId tid) |
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... | |
void | find_and_replace (std::string &source, const std::string find, std::string replace) |
(Inplace) find and replace all instances of string 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< TypeId > | m_alreadyProcessed |
List of TypeIds we've already processed. More... | |
std::vector< std::string > | m_currentPath |
Current configuration path. More... | |
std::vector< std::pair< TypeId, std::string > > | m_output |
Configuration path for each TypeId. More... | |
Gather aggregation and configuration path information from registered types.
Definition at line 118 of file print-introspected-doxygen.cc.
|
private |
Gather attribute, configuration path information for tid.
tid | [in] the TypeId to gather information from |
Note: for the Doxygen version only, we insert a % in the path below to ensure that doxygen does not attempt to resolve the typeid names included in the string. if the name contains ::, using the % sign will remove that sign resulting for instance in $ns3MobilityModel instead of $ns3::MobilityModel hence the output must be in the form $ns3::MobilityModel in order to show correctly $ns3::MobilityModel We add at the beginning of the name $% and we replace all the :: in the string by ::%.
Definition at line 267 of file print-introspected-doxygen.cc.
References ns3::TypeId::AttributeInformation::checker, ns3::TypeId::GetAttribute(), ns3::TypeId::GetAttributeN(), ns3::ObjectPtrContainerChecker::GetItemTypeId(), ns3::TypeId::GetName(), ns3::PointerChecker::GetPointeeTypeId(), ns3::TypeId::GetRegistered(), ns3::TypeId::GetRegisteredN(), ns3::TypeId::IsChildOf(), ns3::TypeId::AttributeInformation::name, NS_LOG_FUNCTION, ns3::PeekPointer(), and anonymous_namespace{print-introspected-doxygen.cc}::temporaryCharacter.
|
private |
(Inplace) find and replace all instances of string
source | [inout] string to search and replace in |
find | [in] string to search for |
replace | [in] string to insert in place of find |
Definition at line 370 of file print-introspected-doxygen.cc.
void StaticInformation::Gather | ( | TypeId | tid | ) |
Gather aggregation and configuration path information for tid.
tid | [in] the TypeId to gather information from |
Definition at line 258 of file print-introspected-doxygen.cc.
Referenced by main().
std::vector< std::string > StaticInformation::Get | ( | TypeId | tid | ) |
tid | [in] the TypeId to return information for |
Definition at line 243 of file print-introspected-doxygen.cc.
Referenced by main().
|
private |
Definition at line 212 of file print-introspected-doxygen.cc.
|
private |
tid | [in] the TypeId to check. |
Definition at line 230 of file print-introspected-doxygen.cc.
void StaticInformation::Print | ( | void | ) | const |
Print output in "a -> b" form on std::cout.
Definition at line 202 of file print-introspected-doxygen.cc.
void StaticInformation::RecordAggregationInfo | ( | std::string | a, |
std::string | b | ||
) |
Record the a -> b aggregation relation.
a | [in] the source(?) TypeId name |
b | [in] the destination(?) TypeId name |
Definition at line 196 of file print-introspected-doxygen.cc.
References ns3::TypeId::LookupByName().
Referenced by main().
|
private |
Record the current config path for tid.
tid | [in] the TypeId to record. |
Definition at line 224 of file print-introspected-doxygen.cc.
List of aggregation relationships.
Definition at line 192 of file print-introspected-doxygen.cc.
|
private |
List of TypeIds we've already processed.
Definition at line 188 of file print-introspected-doxygen.cc.
|
private |
Current configuration path.
Definition at line 184 of file print-introspected-doxygen.cc.
|
private |
Configuration path for each TypeId.
Definition at line 180 of file print-introspected-doxygen.cc.