136 NS_ASSERT_MSG (m_linkAttr.find (name) != m_linkAttr.end (),
"Requested topology link attribute not found");
137 return m_linkAttr.find (name)->second;
143 if ( m_linkAttr.find (name) == m_linkAttr.end () )
147 value = m_linkAttr.find (name)->second;
154 m_linkAttr[name] = value;
160 return m_linkAttr.begin ();
165 return m_linkAttr.end ();
Ptr< Node > GetFromNode(void) const
Returns a Ptr to the "from" node of the link.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
static TypeId GetTypeId(void)
Get the type ID.
ConstLinksIterator LinksBegin(void) const
Returns an iterator to the the first link in this block.
std::string GetFileName(void) const
Returns the input file name.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
std::list< Link > m_linksList
the container of the links between the nodes
std::string GetAttribute(const std::string &name) const
Returns the value of a link attribute.
bool LinksEmpty(void) const
Checks if the block contains any links.
void AddLink(Link link)
Adds a link to the topology.
virtual ~TopologyReader()
std::string GetFromNodeName(void) const
Returns the name of the "from" node of the link.
Ptr< Node > GetToNode(void) const
Returns a Ptr to the "to" node of the link.
Inner class holding the details about a link between two nodes.
int LinksSize(void) const
Returns the number of links in this block.
void SetFileName(const std::string &fileName)
Sets the input file name.
std::list< Link >::const_iterator ConstLinksIterator
Constant iterator to the list of the links.
std::map< std::string, std::string >::const_iterator ConstAttributesIterator
Constant iterator to scan the map of link attributes.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
std::string m_fileName
the name of the input file
Ptr< Node > m_toPtr
The node the links is directed to.
bool GetAttributeFailSafe(const std::string &name, std::string &value) const
Returns the value of a link attribute.
void SetAttribute(const std::string &name, const std::string &value)
Sets an arbitrary link attribute.
std::string m_fromName
Name of the node the links originates from.
std::string m_toName
Name of the node the links is directed to.
#define NS_ASSERT_MSG(condition, message)
At runtime, in debugging builds, if this condition is not true, the program prints the message to out...
std::string GetToNodeName(void) const
Returns the name of the "to" node of the link.
ConstAttributesIterator AttributesBegin(void) const
Returns an iterator to the begin of the attributes.
ConstAttributesIterator AttributesEnd(void) const
Returns an iterator to the end of the attributes.
A base class which provides memory management and object aggregation.
Ptr< Node > m_fromPtr
The node the links originates from.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
ConstLinksIterator LinksEnd(void) const
Returns an iterator to the the last link in this block.