X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1973cb8a42030c3663609c111d4acf5eb519d8f1..f59a0f20f1d471426dda7ca467be463c1b0ad6f3:/src/surf/surf_routing.cpp diff --git a/src/surf/surf_routing.cpp b/src/surf/surf_routing.cpp index 3dee138b2b..19b30f045c 100644 --- a/src/surf/surf_routing.cpp +++ b/src/surf/surf_routing.cpp @@ -60,8 +60,7 @@ simgrid::kernel::routing::NetCard *sg_netcard_by_name_or_null(const char *name) } /* Global vars */ -simgrid::kernel::routing::RoutingPlatf *routing_platf = nullptr; - +simgrid::kernel::routing::RoutingPlatf* routing_platf = new simgrid::kernel::routing::RoutingPlatf(); void sg_platf_new_trace(sg_platf_trace_cbarg_t trace) { @@ -98,42 +97,11 @@ void RoutingPlatf::getRouteAndLatency(NetCard *src, NetCard *dst, std::vector
  • name().c_str(), dst->name().c_str()); - AsImpl::getRouteRecursive(src, dst, route, latency); -} - -static xbt_dynar_t _recursiveGetOneLinkRoutes(AsImpl *as) -{ - xbt_dynar_t ret = xbt_dynar_new(sizeof(Onelink*), xbt_free_f); - - //adding my one link routes - xbt_dynar_t onelink_mine = as->getOneLinkRoutes(); - if (onelink_mine) - xbt_dynar_merge(&ret,&onelink_mine); - - //recursing - char *key; - xbt_dict_cursor_t cursor = nullptr; - AsImpl *rc_child; - xbt_dict_foreach(as->children(), cursor, key, rc_child) { - xbt_dynar_t onelink_child = _recursiveGetOneLinkRoutes(rc_child); - if (onelink_child) - xbt_dynar_merge(&ret,&onelink_child); - } - return ret; -} - -xbt_dynar_t RoutingPlatf::getOneLinkRoutes(){ - return _recursiveGetOneLinkRoutes(root_); + AsImpl::getGlobalRoute(src, dst, route, latency); } }}} -/** @brief create the root AS */ -void routing_model_create(Link *loopback) -{ - routing_platf = new simgrid::kernel::routing::RoutingPlatf(loopback); -} - /* ************************************************************************** */ /* ************************* GENERIC PARSE FUNCTIONS ************************ */ @@ -165,10 +133,7 @@ void routing_exit() { delete routing_platf; } -simgrid::kernel::routing::RoutingPlatf::RoutingPlatf(simgrid::surf::Link *loopback) -: loopback_(loopback) -{ -} +simgrid::kernel::routing::RoutingPlatf::RoutingPlatf() = default; simgrid::kernel::routing::RoutingPlatf::~RoutingPlatf() { delete root_;