This class reads annotated topology and apply settings to the corresponding nodes and links. More...
#include <annotated-topology-reader.h>
Public Member Functions | |
AnnotatedTopologyReader (const std::string &path="", double scale=1.0) | |
Constructor. More... | |
virtual NodeContainer | Read () |
Main annotated topology reading function. More... | |
virtual NodeContainer | GetNodes () const |
Get nodes read by the reader. | |
virtual const std::list< Link > & | GetLinks () const |
Get links read by the reader. | |
virtual void | AssignIpv4Addresses (Ipv4Address base) |
Assign IPv4 addresses to all links. More... | |
virtual void | SetBoundingBox (double ulx, double uly, double lrx, double lry) |
Set bounding box where nodes will be randomly places (if positions are unspecified) More... | |
virtual void | SetMobilityModel (const std::string &model) |
Set mobility model to be used on nodes. More... | |
virtual void | ApplyOspfMetric () |
Apply OSPF metric on Ipv4 (if exists) and Ccnx (if exists) stacks. | |
virtual void | SaveTopology (const std::string &file) |
Save positions (e.g., after manual modification using visualizer) | |
virtual void | SaveGraphviz (const std::string &file) |
Save topology in graphviz format (.dot file) | |
Protected Member Functions | |
Ptr< Node > | CreateNode (const std::string name, uint32_t systemId) |
Ptr< Node > | CreateNode (const std::string name, double posX, double posY, uint32_t systemId) |
void | ApplySettings () |
This method applies setting to corresponding nodes and links NetDeviceContainer must be allocated NodeContainer from Read method. | |
Protected Attributes | |
std::string | m_path |
NodeContainer | m_nodes |
This class reads annotated topology and apply settings to the corresponding nodes and links.
Definition at line 35 of file annotated-topology-reader.h.
ns3::AnnotatedTopologyReader::AnnotatedTopologyReader | ( | const std::string & | path = "" , |
double | scale = 1.0 |
||
) |
Constructor.
path | ns3::Names path |
scale | Scaling factor for coordinates in input file |
Definition at line 67 of file annotated-topology-reader.cc.
References SetMobilityModel().
|
virtual |
Assign IPv4 addresses to all links.
Note, IPv4 stack should be installed on all nodes prior this call
Every link will receive /24 netmask
base | Starting IPv4 address (second link will have base+256) |
Definition at line 259 of file annotated-topology-reader.cc.
|
virtual |
Main annotated topology reading function.
This method opens an input stream and reads topology file with annotations.
Reimplemented in ns3::RocketfuelMapReader, and ns3::RocketfuelWeightsReader.
Definition at line 145 of file annotated-topology-reader.cc.
References ApplySettings().
Referenced by ns3::RocketfuelWeightsReader::Read().
|
virtual |
Set bounding box where nodes will be randomly places (if positions are unspecified)
ulx | Upper left x coordinate |
uly | Upper left y coordinate |
lrx | Lower right x coordinate |
lry | Lower right y coordinate |
Definition at line 80 of file annotated-topology-reader.cc.
|
virtual |
Set mobility model to be used on nodes.
model | class name of the model |
Definition at line 89 of file annotated-topology-reader.cc.
Referenced by AnnotatedTopologyReader().