X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/4a6b0a991a67e6f2f67c03fed43529e078da7115..cbdeddd8156031a2c790d1da9886ac4b76a6b447:/src/surf/surf_routing_cluster_torus.cpp diff --git a/src/surf/surf_routing_cluster_torus.cpp b/src/surf/surf_routing_cluster_torus.cpp index 83151df2b0..294c12718a 100644 --- a/src/surf/surf_routing_cluster_torus.cpp +++ b/src/surf/surf_routing_cluster_torus.cpp @@ -4,8 +4,8 @@ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#include "src/surf/surf_routing_private.hpp" #include "src/surf/surf_routing_cluster_torus.hpp" +#include "src/surf/xml/platf.hpp" // FIXME: move that back to the parsing area XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_cluster_torus, surf_route_cluster, "Torus Routing part of surf"); @@ -59,7 +59,6 @@ namespace simgrid { link.id = link_id; link.bandwidth = cluster->bw; link.latency = cluster->lat; - link.initiallyOn = 1; link.policy = cluster->sharing_policy; sg_platf_new_link(&link); s_surf_parsing_link_up_down_t info; @@ -116,16 +115,15 @@ namespace simgrid { XBT_VERB("torus_get_route_and_latency from '%s'[%d] to '%s'[%d]", src->name(), src->id(), dst->name(), dst->id()); - if (dst->getRcType() == SURF_NETWORK_ELEMENT_ROUTER || src->getRcType() == SURF_NETWORK_ELEMENT_ROUTER) + if (dst->isRouter() || src->isRouter()) return; if ((src->id() == dst->id()) && has_loopback_) { - s_surf_parsing_link_up_down_t info = - xbt_dynar_get_as(upDownLinks, src->id() * nb_links_per_node_, s_surf_parsing_link_up_down_t); - xbt_dynar_push_as(route->link_list, void *, info.link_up); + s_surf_parsing_link_up_down_t info = xbt_dynar_get_as(upDownLinks, src->id() * nb_links_per_node_, s_surf_parsing_link_up_down_t); + route->link_list->push_back(info.link_up); if (lat) - *lat += static_cast < Link * >(info.link_up)->getLatency(); + *lat += info.link_up->getLatency(); return; } @@ -204,21 +202,19 @@ namespace simgrid { if (has_limiter_) { // limiter for sender info = xbt_dynar_get_as(upDownLinks, nodeOffset + has_loopback_, s_surf_parsing_link_up_down_t); - xbt_dynar_push_as(route->link_list, void *, info.link_up); + route->link_list->push_back(info.link_up); } info = xbt_dynar_get_as(upDownLinks, linkOffset, s_surf_parsing_link_up_down_t); if (use_lnk_up == false) { - xbt_dynar_push_as(route->link_list, void *, info.link_down); - + route->link_list->push_back(info.link_down); if (lat) - *lat += static_cast < Link * >(info.link_down)->getLatency(); + *lat += info.link_down->getLatency(); } else { - xbt_dynar_push_as(route->link_list, void *, info.link_up); - + route->link_list->push_back(info.link_up); if (lat) - *lat += static_cast < Link * >(info.link_up)->getLatency(); + *lat += info.link_up->getLatency(); } current_node = next_node; next_node = 0; @@ -226,8 +222,6 @@ namespace simgrid { free(myCoords); free(targetCoords); - - return; }