#include "simgrid/kernel/routing/NetPoint.hpp"
#include "simgrid/kernel/routing/RoutedZone.hpp"
#include "src/surf/network_interface.hpp"
-#include "src/surf/xml/platf_private.hpp" // RouteCreationArgs and friends
#include "xbt/string.hpp"
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_star, surf, "Routing part of surf");
namespace routing {
StarZone::StarZone(const std::string& name) : NetZoneImpl(name) {}
-void StarZone::add_links_to_route(const std::vector<resource::LinkImpl*>& links, RouteCreationArgs* route,
- double* latency, std::unordered_set<resource::LinkImpl*>& added_links) const
+void StarZone::add_links_to_route(const std::vector<resource::LinkImpl*>& links, Route* route, double* latency,
+ std::unordered_set<resource::LinkImpl*>& added_links) const
{
for (auto* link : links) {
- /* do not add duplicated links in route->link_list */
+ /* do not add duplicated links in route->link_list_ */
if (not added_links.insert(link).second)
continue;
if (latency)
*latency += link->get_latency();
- route->link_list.push_back(link);
+ route->link_list_.push_back(link);
}
}
-void StarZone::get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* route, double* latency)
+void StarZone::get_local_route(NetPoint* src, NetPoint* dst, Route* route, double* latency)
{
XBT_VERB("StarZone getLocalRoute from '%s'[%u] to '%s'[%u]", src->get_cname(), src->id(), dst->get_cname(),
dst->id());
/* going DOWN */
add_links_to_route(dst_route.links_down, route, latency, added_links);
/* gateways */
- route->gw_src = src_route.gateway;
- route->gw_dst = dst_route.gateway;
+ route->gw_src_ = src_route.gateway;
+ route->gw_dst_ = dst_route.gateway;
}
void StarZone::get_graph(const s_xbt_graph_t* graph, std::map<std::string, xbt_node_t, std::less<>>* nodes,
}
void StarZone::add_route(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst,
- const std::vector<kernel::resource::LinkImpl*>& link_list, bool symmetrical)
+ const std::vector<kernel::resource::LinkImpl*>& link_list_, bool symmetrical)
{
check_add_route_param(src, dst, gw_src, gw_dst, symmetrical);
- s4u::NetZone::on_route_creation(symmetrical, gw_src, gw_dst, gw_src, gw_dst, link_list);
+ s4u::NetZone::on_route_creation(symmetrical, gw_src, gw_dst, gw_src, gw_dst, link_list_);
/* loopback */
if (src == dst) {
- routes_[src->id()].loopback = link_list;
+ routes_[src->id()].loopback = link_list_;
} else {
/* src to everyone */
if (src) {
auto& route = routes_[src->id()];
- route.links_up = link_list;
+ route.links_up = link_list_;
route.gateway = gw_src;
route.links_up_set = true;
if (symmetrical) {
/* reverse it for down/symmetrical links */
- route.links_down.assign(link_list.rbegin(), link_list.rend());
+ route.links_down.assign(link_list_.rbegin(), link_list_.rend());
route.links_down_set = true;
}
}
/* dst to everyone */
if (dst) {
auto& route = routes_[dst->id()];
- route.links_down = link_list;
+ route.links_down = link_list_;
route.gateway = gw_dst;
route.links_down_set = true;
}