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

Public Member Functions

 NamesPriv ()
 ~NamesPriv ()
bool Add (std::string name, Ptr< Object > object)
bool Add (std::string path, std::string name, Ptr< Object > object)
bool Add (Ptr< Object > context, std::string name, Ptr< Object > object)
void Clear (void)
Ptr< ObjectFind (std::string name)
Ptr< ObjectFind (std::string path, std::string name)
Ptr< ObjectFind (Ptr< Object > context, std::string name)
std::string FindName (Ptr< Object > object)
std::string FindPath (Ptr< Object > object)
bool Rename (std::string oldpath, std::string newname)
bool Rename (std::string path, std::string oldname, std::string newname)
bool Rename (Ptr< Object > context, std::string oldname, std::string newname)

Private Member Functions

bool IsDuplicateName (NameNode *node, std::string name)
NameNodeIsNamed (Ptr< Object >)

Static Private Member Functions

static NamesPrivGet (void)

Private Attributes

std::map< Ptr< Object >
, NameNode * > 
m_objectMap
NameNode m_root

Friends

class Names

Detailed Description

Definition at line 79 of file names.cc.

Constructor & Destructor Documentation

ns3::NamesPriv::NamesPriv ( )
ns3::NamesPriv::~NamesPriv ( )

Definition at line 129 of file names.cc.

References Clear(), ns3::NameNode::m_name, m_root, and NS_LOG_FUNCTION_NOARGS.

+ Here is the call graph for this function:

Member Function Documentation

bool ns3::NamesPriv::Add ( std::string  name,
Ptr< Object object 
)

Definition at line 158 of file names.cc.

References NS_ASSERT_MSG, and NS_LOG_FUNCTION.

Referenced by ns3::Names::Add(), and Add().

+ Here is the caller graph for this function:

bool ns3::NamesPriv::Add ( std::string  path,
std::string  name,
Ptr< Object object 
)

Definition at line 220 of file names.cc.

References Add(), and Find().

+ Here is the call graph for this function:

bool ns3::NamesPriv::Add ( Ptr< Object context,
std::string  name,
Ptr< Object object 
)

Definition at line 230 of file names.cc.

References IsDuplicateName(), IsNamed(), ns3::NameNode::m_nameMap, m_objectMap, m_root, NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

+ Here is the call graph for this function:

void ns3::NamesPriv::Clear ( void  )

Definition at line 137 of file names.cc.

References ns3::NameNode::m_name, ns3::NameNode::m_nameMap, ns3::NameNode::m_object, m_objectMap, ns3::NameNode::m_parent, and m_root.

Referenced by ns3::Names::Clear(), and ~NamesPriv().

+ Here is the caller graph for this function:

Ptr< Object > ns3::NamesPriv::Find ( std::string  name)

Definition at line 432 of file names.cc.

References ns3::NameNode::m_nameMap, m_root, NS_ASSERT_MSG, and NS_LOG_LOGIC.

Referenced by Add(), Find(), ns3::Names::FindInternal(), and Rename().

+ Here is the caller graph for this function:

Ptr< Object > ns3::NamesPriv::Find ( std::string  path,
std::string  name 
)

Definition at line 524 of file names.cc.

References Find(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

Ptr< Object > ns3::NamesPriv::Find ( Ptr< Object context,
std::string  name 
)

Definition at line 536 of file names.cc.

References IsNamed(), ns3::NameNode::m_nameMap, m_root, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

+ Here is the call graph for this function:

std::string ns3::NamesPriv::FindName ( Ptr< Object object)

Definition at line 386 of file names.cc.

References m_objectMap, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by ns3::Names::FindName().

+ Here is the caller graph for this function:

std::string ns3::NamesPriv::FindPath ( Ptr< Object object)

Definition at line 404 of file names.cc.

References ns3::NameNode::m_name, m_objectMap, ns3::NameNode::m_parent, NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by ns3::Names::FindPath().

+ Here is the caller graph for this function:

NamesPriv * ns3::NamesPriv::Get ( void  )
staticprivate

Definition at line 114 of file names.cc.

Referenced by ns3::Names::Add(), ns3::Names::Clear(), ns3::Names::FindInternal(), ns3::Names::FindName(), ns3::Names::FindPath(), and ns3::Names::Rename().

+ Here is the caller graph for this function:

bool ns3::NamesPriv::IsDuplicateName ( NameNode node,
std::string  name 
)
private

Definition at line 589 of file names.cc.

References ns3::NameNode::m_nameMap, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by Add(), and Rename().

+ Here is the caller graph for this function:

NameNode * ns3::NamesPriv::IsNamed ( Ptr< Object object)
private

Definition at line 571 of file names.cc.

References m_objectMap, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by Add(), Find(), and Rename().

+ Here is the caller graph for this function:

bool ns3::NamesPriv::Rename ( std::string  oldpath,
std::string  newname 
)

Definition at line 265 of file names.cc.

References NS_ASSERT_MSG, and NS_LOG_FUNCTION.

Referenced by Rename(), and ns3::Names::Rename().

+ Here is the caller graph for this function:

bool ns3::NamesPriv::Rename ( std::string  path,
std::string  oldname,
std::string  newname 
)

Definition at line 329 of file names.cc.

References Find(), and Rename().

+ Here is the call graph for this function:

bool ns3::NamesPriv::Rename ( Ptr< Object context,
std::string  oldname,
std::string  newname 
)

Definition at line 339 of file names.cc.

References IsDuplicateName(), IsNamed(), ns3::NameNode::m_name, ns3::NameNode::m_nameMap, m_root, NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

+ Here is the call graph for this function:

Friends And Related Function Documentation

friend class Names
friend

Definition at line 103 of file names.cc.

Member Data Documentation

std::map<Ptr<Object>, NameNode *> ns3::NamesPriv::m_objectMap
private

Definition at line 110 of file names.cc.

Referenced by Add(), Clear(), FindName(), FindPath(), and IsNamed().

NameNode ns3::NamesPriv::m_root
private

Definition at line 109 of file names.cc.

Referenced by Add(), Clear(), Find(), NamesPriv(), Rename(), and ~NamesPriv().


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