22#ifndef TOPOLOGY_READER_H
23#define TOPOLOGY_READER_H
28#include "ns3/object.h"
103 std::string
GetAttribute (
const std::string &name)
const;
117 void SetAttribute (
const std::string &name,
const std::string &value);
keep track of a set of node pointers.
A base class which provides memory management and object aggregation.
Inner class holding the details about a link between two nodes.
std::map< std::string, std::string > m_linkAttr
Container of the link attributes (if any).
Ptr< Node > m_fromPtr
The node the links originates from.
ConstAttributesIterator AttributesEnd(void) const
Returns an iterator to the end of the attributes.
std::string GetFromNodeName(void) const
Returns the name of the "from" node of the link.
void SetAttribute(const std::string &name, const std::string &value)
Sets an arbitrary link attribute.
ConstAttributesIterator AttributesBegin(void) const
Returns an iterator to the begin of the attributes.
bool GetAttributeFailSafe(const std::string &name, std::string &value) const
Returns the value of a link attribute.
Ptr< Node > GetToNode(void) const
Returns a Ptr<Node> to the "to" node of the link.
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.
Ptr< Node > GetFromNode(void) const
Returns a Ptr<Node> to the "from" node of the link.
Ptr< Node > m_toPtr
The node the links is directed to.
std::map< std::string, std::string >::const_iterator ConstAttributesIterator
Constant iterator to scan the map of link attributes.
std::string GetAttribute(const std::string &name) const
Returns the value of a link attribute.
std::string GetToNodeName(void) const
Returns the name of the "to" node of the link.
Interface for input file readers management.
std::list< Link > m_linksList
The container of the links between the nodes.
ConstLinksIterator LinksBegin(void) const
Returns an iterator to the the first link in this block.
void AddLink(Link link)
Adds a link to the topology.
int LinksSize(void) const
Returns the number of links in this block.
bool LinksEmpty(void) const
Checks if the block contains any links.
virtual ~TopologyReader()
ConstLinksIterator LinksEnd(void) const
Returns an iterator to the the last link in this block.
std::string GetFileName(void) const
Returns the input file name.
static TypeId GetTypeId(void)
Get the type ID.
void SetFileName(const std::string &fileName)
Sets the input file name.
TopologyReader(const TopologyReader &)=delete
std::string m_fileName
The name of the input file.
TopologyReader & operator=(const TopologyReader &)=delete
std::list< Link >::const_iterator ConstLinksIterator
Constant iterator to the list of the links.
virtual NodeContainer Read(void)=0
Main topology reading function.
a unique identifier for an interface.
Every class exported by the ns3 library is enclosed in the ns3 namespace.