X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/bf41d7b09bccdac18be3631c03256f2a34bdb202..12ff962f066e304dbaa22cafcd6d5c7adb67c33c:/include/simgrid/kernel/routing/FullZone.hpp diff --git a/include/simgrid/kernel/routing/FullZone.hpp b/include/simgrid/kernel/routing/FullZone.hpp index 4890a24df9..f602e8193d 100644 --- a/include/simgrid/kernel/routing/FullZone.hpp +++ b/include/simgrid/kernel/routing/FullZone.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2018. 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. */ @@ -19,18 +19,19 @@ namespace routing { * computational requirements, but also the highest memory requirements (both in platform file and in memory). */ class XBT_PRIVATE FullZone : public RoutedZone { -public: - explicit FullZone(NetZone* father, std::string name); - void seal() override; - ~FullZone() override; + std::vector>> routing_table_; + void do_seal() override; + /** @brief Check and resize (if necessary) the routing table */ + void check_routing_table(); - void getLocalRoute(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; - void addRoute(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, kernel::routing::NetPoint* gw_src, - kernel::routing::NetPoint* gw_dst, std::vector& link_list, - bool symmetrical) override; +public: + using RoutedZone::RoutedZone; + FullZone(const FullZone&) = delete; + FullZone& operator=(const FullZone) = delete; -private: - RouteCreationArgs** routing_table_ = nullptr; + void get_local_route(NetPoint* src, NetPoint* dst, Route* into, double* latency) override; + void add_route(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, + const std::vector& link_list, bool symmetrical) override; }; } // namespace routing } // namespace kernel