From: Martin Quinson Date: Fri, 12 Feb 2016 08:46:17 +0000 (+0100) Subject: Routing: kill some dupplicated code X-Git-Tag: v3_13~859 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/0ef25bc8b50d2820e612d6f416bf2c8657b0658e Routing: kill some dupplicated code --- diff --git a/src/surf/sg_platf.cpp b/src/surf/sg_platf.cpp index bdf0803588..02017af880 100644 --- a/src/surf/sg_platf.cpp +++ b/src/surf/sg_platf.cpp @@ -73,7 +73,7 @@ void sg_platf_new_host(sg_platf_host_cbarg_t host) simgrid::surf::NetCard *netcard = new simgrid::surf::NetCardImpl(host->id, SURF_NETWORK_ELEMENT_HOST, current_routing); - netcard->setId(current_routing->parsePU(netcard)); + netcard->setId(current_routing->addComponent(netcard)); sg_host_t h = simgrid::s4u::Host::by_name_or_create(host->id); h->pimpl_netcard = netcard; simgrid::surf::netcardCreatedCallbacks(netcard); @@ -130,7 +130,7 @@ void sg_platf_new_router(sg_platf_router_cbarg_t router) router->id); simgrid::surf::NetCard *info = new simgrid::surf::NetCardImpl(router->id, SURF_NETWORK_ELEMENT_ROUTER, current_routing); - info->setId(current_routing->parsePU(info)); + info->setId(current_routing->addComponent(info)); xbt_lib_set(as_router_lib, router->id, ROUTING_ASR_LEVEL, (void *) info); XBT_DEBUG("Having set name '%s' id '%d'", router->id, info->getId()); simgrid::surf::netcardCreatedCallbacks(info); diff --git a/src/surf/surf_routing.cpp b/src/surf/surf_routing.cpp index 8bad71793b..237c4ed7c3 100644 --- a/src/surf/surf_routing.cpp +++ b/src/surf/surf_routing.cpp @@ -21,6 +21,7 @@ #include "src/surf/surf_routing_full.hpp" #include "src/surf/surf_routing_vivaldi.hpp" +XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route, surf, "Routing part of surf"); namespace simgrid { namespace surf { @@ -42,6 +43,12 @@ namespace surf { delete netcard_; } + int As::addComponent(NetCard *elm) { + XBT_DEBUG("Load component \"%s\"", elm->getName()); + xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); + return xbt_dynar_length(p_indexNetworkElm)-1; + } + }} // namespace simgrid::surf /** @@ -79,7 +86,6 @@ simgrid::surf::NetCard *sg_netcard_by_name_or_null(const char *name) /* Global vars */ simgrid::surf::RoutingPlatf *routing_platf = NULL; -XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route, surf, "Routing part of surf"); /** The current AS in the parsing */ static simgrid::surf::As *current_routing = NULL; @@ -186,7 +192,7 @@ void routing_AS_begin(sg_platf_AS_cbarg_t AS) xbt_dict_set(current_routing->sons_, AS->id, (void *) new_as, NULL); /* add to the father element list */ - netcard->setId(current_routing->parseAS(netcard)); + netcard->setId(current_routing->addComponent(netcard)); } else { THROWF(arg_error, 0, "All defined components must belong to a AS"); } diff --git a/src/surf/surf_routing.hpp b/src/surf/surf_routing.hpp index 7a67da8792..8ffb46fbf0 100644 --- a/src/surf/surf_routing.hpp +++ b/src/surf/surf_routing.hpp @@ -95,8 +95,7 @@ public: * that a new element is added to the AS currently built. * * Of course, only the routing model of this AS is informed, not every ones */ - virtual int parsePU(NetCard *elm)=0; /* A host or a router, whatever */ - virtual int parseAS(NetCard *elm)=0; + virtual int addComponent(NetCard *elm); /* A host, a router or an AS, whatever */ virtual void parseRoute(sg_platf_route_cbarg_t route)=0; virtual void parseASroute(sg_platf_route_cbarg_t route)=0; virtual void parseBypassroute(sg_platf_route_cbarg_t e_route)=0; diff --git a/src/surf/surf_routing_cluster.cpp b/src/surf/surf_routing_cluster.cpp index f384013699..61ced4e8ad 100644 --- a/src/surf/surf_routing_cluster.cpp +++ b/src/surf/surf_routing_cluster.cpp @@ -162,17 +162,5 @@ void AsCluster::create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, xbt_free(link_id); } -int AsCluster::parsePU(NetCard *elm) { - XBT_DEBUG("Load process unit \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); - return xbt_dynar_length(p_indexNetworkElm)-1; -} - -int AsCluster::parseAS(NetCard *elm) { - XBT_DEBUG("Load Autonomous system \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); - return xbt_dynar_length(p_indexNetworkElm)-1; -} - } } diff --git a/src/surf/surf_routing_cluster.hpp b/src/surf/surf_routing_cluster.hpp index ad7f4a0d07..74018c5e8c 100644 --- a/src/surf/surf_routing_cluster.hpp +++ b/src/surf/surf_routing_cluster.hpp @@ -32,8 +32,6 @@ public: virtual void getRouteAndLatency(NetCard *src, NetCard *dst, sg_platf_route_cbarg_t into, double *latency) override; void getGraph(xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges) override; - int parsePU(NetCard *elm) override; /* A host or a router, whatever */ - int parseAS(NetCard *elm) override; virtual void create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int rank, int position); virtual void parse_specific_arguments(sg_platf_cluster_cbarg_t cluster) {} diff --git a/src/surf/surf_routing_generic.cpp b/src/surf/surf_routing_generic.cpp index 3e8a8d82c5..d3329524b3 100644 --- a/src/surf/surf_routing_generic.cpp +++ b/src/surf/surf_routing_generic.cpp @@ -58,20 +58,6 @@ AsGeneric::~AsGeneric() xbt_dict_free(&bypassRoutes_); } -int AsGeneric::parsePU(NetCard *elm) -{ - XBT_DEBUG("Load process unit \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); - return xbt_dynar_length(p_indexNetworkElm)-1; -} - -int AsGeneric::parseAS(NetCard *elm) -{ - XBT_DEBUG("Load Autonomous system \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); - return xbt_dynar_length(p_indexNetworkElm)-1; -} - void AsGeneric::parseBypassroute(sg_platf_route_cbarg_t e_route) { char *src = (char*)(e_route->src); diff --git a/src/surf/surf_routing_generic.hpp b/src/surf/surf_routing_generic.hpp index ce2c2876f4..bd5d3c560d 100644 --- a/src/surf/surf_routing_generic.hpp +++ b/src/surf/surf_routing_generic.hpp @@ -29,8 +29,6 @@ public: * that a new element is added to the AS currently built. * * Of course, only the routing model of this AS is informed, not every ones */ - virtual int parsePU(NetCard *elm) override; /* A host or a router, whatever */ - virtual int parseAS(NetCard *elm) override; virtual void parseRoute(sg_platf_route_cbarg_t route) override; virtual void parseASroute(sg_platf_route_cbarg_t route) override; virtual void parseBypassroute(sg_platf_route_cbarg_t e_route) override; diff --git a/src/surf/surf_routing_none.cpp b/src/surf/surf_routing_none.cpp index 34e817cef3..ddd0dd8e35 100644 --- a/src/surf/surf_routing_none.cpp +++ b/src/surf/surf_routing_none.cpp @@ -36,20 +36,6 @@ sg_platf_route_cbarg_t AsNone::getBypassRoute(NetCard * /*src*/, NetCard * /*dst return NULL; } -int AsNone::parsePU(NetCard *elm) { - XBT_DEBUG("Load process unit \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); - /* don't care about PUs */ - return -1; -} - -int AsNone::parseAS(NetCard *elm) { - XBT_DEBUG("Load Autonomous system \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, NetCard*, elm); - /* even don't care about sub-ASes -- I'm as nihilist as an old punk*/ - return -1; -} - void AsNone::parseRoute(sg_platf_route_cbarg_t /*route*/){ THROW_IMPOSSIBLE; /* No. */ } diff --git a/src/surf/surf_routing_none.hpp b/src/surf/surf_routing_none.hpp index 3ed7b18e03..b537f9d183 100644 --- a/src/surf/surf_routing_none.hpp +++ b/src/surf/surf_routing_none.hpp @@ -30,8 +30,6 @@ public: * that a new element is added to the AS currently built. * * Of course, only the routing model of this AS is informed, not every ones */ - int parsePU(NetCard *elm) override; /* A host or a router, whatever */ - int parseAS( NetCard *elm) override; void parseRoute(sg_platf_route_cbarg_t route) override; void parseASroute(sg_platf_route_cbarg_t route) override; void parseBypassroute(sg_platf_route_cbarg_t e_route) override; diff --git a/src/surf/surf_routing_vivaldi.cpp b/src/surf/surf_routing_vivaldi.cpp index 6249166212..95bcc1b26c 100644 --- a/src/surf/surf_routing_vivaldi.cpp +++ b/src/surf/surf_routing_vivaldi.cpp @@ -110,11 +110,5 @@ void AsVivaldi::getRouteAndLatency(NetCard *src, NetCard *dst, sg_platf_route_cb } } -int AsVivaldi::parsePU(NetCard *elm) { - XBT_DEBUG("Load process unit \"%s\"", elm->getName()); - xbt_dynar_push_as(p_indexNetworkElm, sg_netcard_t, elm); - return xbt_dynar_length(p_indexNetworkElm)-1; -} - } } diff --git a/src/surf/surf_routing_vivaldi.hpp b/src/surf/surf_routing_vivaldi.hpp index 69299e0e32..9e607ba4ff 100644 --- a/src/surf/surf_routing_vivaldi.hpp +++ b/src/surf/surf_routing_vivaldi.hpp @@ -30,7 +30,6 @@ public: ~AsVivaldi() {}; void getRouteAndLatency(NetCard *src, NetCard *dst, sg_platf_route_cbarg_t into, double *latency) override; - int parsePU(NetCard *elm) override; }; }