SimGrid
3.18
Versatile Simulation of Distributed Systems
|
Networking Zones.
A netzone is a network container, in charge of routing information between elements (hosts) and to the nearby netzones. In SimGrid, there is a hierarchy of netzones, with a unique root zone (that you can retrieve from the s4u::Engine).
#include <NetZone.hpp>
Public Member Functions | |
virtual void | seal () |
Seal your netzone once you're done adding content, and before routing stuff through it. More... | |
const std::string & | getName () const |
Retrieves the name of that netzone as a C++ string. More... | |
const char * | getCname () const |
Retrieves the name of that netzone as a C string. More... | |
NetZone * | getFather () |
std::vector< NetZone * > * | getChildren () |
void | getHosts (std::vector< s4u::Host *> *whereto) |
std::unordered_map< std::string, std::string > * | getProperties () |
Get the properties assigned to a host. More... | |
const char * | getProperty (const char *key) |
Retrieve the property value (or nullptr if not set) More... | |
void | setProperty (const char *key, const char *value) |
virtual int | addComponent (kernel::routing::NetPoint *elm) |
virtual void | addRoute (kernel::routing::NetPoint *src, kernel::routing::NetPoint *dst, kernel::routing::NetPoint *gw_src, kernel::routing::NetPoint *gw_dst, std::vector< simgrid::surf::LinkImpl *> &link_list, bool symmetrical) |
virtual void | addBypassRoute (kernel::routing::NetPoint *src, kernel::routing::NetPoint *dst, kernel::routing::NetPoint *gw_src, kernel::routing::NetPoint *gw_dst, std::vector< simgrid::surf::LinkImpl *> &link_list, bool symmetrical)=0 |
Static Public Attributes | |
static simgrid::xbt::signal< void(bool symmetrical, kernel::routing::NetPoint *src, kernel::routing::NetPoint *dst, kernel::routing::NetPoint *gw_src, kernel::routing::NetPoint *gw_dst, std::vector< surf::LinkImpl * > &link_list)> | onRouteCreation |
static simgrid::xbt::signal< void(NetZone &)> | onCreation |
static simgrid::xbt::signal< void(NetZone &)> | onSeal |
Protected Member Functions | |
NetZone (NetZone *father, std::string name) | |
virtual | ~NetZone () |
unsigned int | getTableSize () |
std::vector< kernel::routing::NetPoint * > | getVertices () |
|
explicitprotected |
|
protectedvirtual |
|
virtual |
Seal your netzone once you're done adding content, and before routing stuff through it.
Reimplemented in simgrid::kernel::routing::FatTreeZone, simgrid::kernel::routing::DragonflyZone, simgrid::kernel::routing::DijkstraZone, simgrid::kernel::routing::FloydZone, and simgrid::kernel::routing::FullZone.
|
inline |
Retrieves the name of that netzone as a C++ string.
const char * simgrid::s4u::NetZone::getCname | ( | ) | const |
Retrieves the name of that netzone as a C string.
NetZone * simgrid::s4u::NetZone::getFather | ( | ) |
std::vector< NetZone * > * simgrid::s4u::NetZone::getChildren | ( | ) |
std::unordered_map< std::string, std::string > * simgrid::s4u::NetZone::getProperties | ( | ) |
Get the properties assigned to a host.
const char * simgrid::s4u::NetZone::getProperty | ( | const char * | key | ) |
Retrieve the property value (or nullptr if not set)
void simgrid::s4u::NetZone::setProperty | ( | const char * | key, |
const char * | value | ||
) |
|
virtual |
|
virtual |
|
pure virtual |
Implemented in simgrid::kernel::routing::NetZoneImpl.
|
inlineprotected |
|
inlineprotected |
|
static |
|
static |
|
static |