X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e95d2dda61913a92ff3a9d1b7c368ba6e1443b30..76d4849864c227687e17bdd93c5b1338e9b4cb50:/include/simgrid/kernel/routing/RoutedZone.hpp diff --git a/include/simgrid/kernel/routing/RoutedZone.hpp b/include/simgrid/kernel/routing/RoutedZone.hpp index f8ab5d16f6..a8fe0d8ebc 100644 --- a/include/simgrid/kernel/routing/RoutedZone.hpp +++ b/include/simgrid/kernel/routing/RoutedZone.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2017. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2013-2021. The SimGrid Team. All rights reserved. */ /* 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. */ @@ -6,7 +6,7 @@ #ifndef SIMGRID_ROUTING_GENERIC_HPP_ #define SIMGRID_ROUTING_GENERIC_HPP_ -#include "simgrid/kernel/routing/NetZoneImpl.hpp" +#include namespace simgrid { namespace kernel { @@ -15,7 +15,7 @@ namespace routing { /** @ingroup ROUTING_API * @brief NetZone with an explicit routing (abstract class) * - * This abstract class factorizes code between its subclasses: Full, Dijkstra and Floyd. + * This abstract class factors code between its subclasses: Full, Dijkstra and Floyd. * * * @@ -50,29 +50,25 @@ namespace routing { class XBT_PRIVATE RoutedZone : public NetZoneImpl { public: - explicit RoutedZone(NetZone* father, std::string name); + explicit RoutedZone(const std::string& name); - void getGraph(xbt_graph_t graph, std::map* nodes, - std::map* edges) override; - virtual RouteCreationArgs* newExtendedRoute(RoutingMode hierarchy, NetPoint* src, NetPoint* dst, NetPoint* gw_src, - NetPoint* gw_dst, std::vector& link_list, - bool symmetrical, bool change_order); + void get_graph(const s_xbt_graph_t* graph, std::map>* nodes, + std::map>* edges) override; protected: - void getRouteCheckParams(NetPoint* src, NetPoint* dst); - void addRouteCheckParams(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, - kernel::routing::NetPoint* gw_src, kernel::routing::NetPoint* gw_dst, - std::vector& link_list, bool symmetrical); + Route* new_extended_route(RoutingMode hierarchy, NetPoint* gw_src, NetPoint* gw_dst, + const std::vector& link_list, bool preserve_order); + void get_route_check_params(const NetPoint* src, const NetPoint* dst) const; + void add_route_check_params(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, + const std::vector& link_list, bool symmetrical) const; }; } // namespace routing } // namespace kernel } // namespace simgrid -extern "C" { -XBT_PRIVATE xbt_node_t new_xbt_graph_node(xbt_graph_t graph, const char* name, - std::map* nodes); -XBT_PRIVATE xbt_edge_t new_xbt_graph_edge(xbt_graph_t graph, xbt_node_t s, xbt_node_t d, - std::map* edges); -} +XBT_PRIVATE xbt_node_t new_xbt_graph_node(const s_xbt_graph_t* graph, const char* name, + std::map>* nodes); +XBT_PRIVATE xbt_edge_t new_xbt_graph_edge(const s_xbt_graph_t* graph, xbt_node_t s, xbt_node_t d, + std::map>* edges); #endif /* SIMGRID_ROUTING_GENERIC_HPP_ */
Comparison of the RoutedZone subclasses