X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5f4329821ed097d617ccb739e1dd1b22caaadf92..ea74f5d95928a521a588737e81f1de94eef25d19:/include/simgrid/kernel/routing/TorusZone.hpp diff --git a/include/simgrid/kernel/routing/TorusZone.hpp b/include/simgrid/kernel/routing/TorusZone.hpp index 4eff9c16e0..22f2511202 100644 --- a/include/simgrid/kernel/routing/TorusZone.hpp +++ b/include/simgrid/kernel/routing/TorusZone.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2014-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2014-2022. 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,16 +19,19 @@ namespace routing { * */ -class XBT_PRIVATE TorusZone : public ClusterZone { +class XBT_PRIVATE TorusZone : public ClusterBase { + std::vector dimensions_; + public: - explicit TorusZone(const std::string& name); - void create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, unsigned int position) override; - void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; - void parse_specific_arguments(ClusterCreationArgs* cluster) override; + explicit TorusZone(const std::string& name) : ClusterBase(name){}; + void create_torus_links(unsigned long id, int rank, unsigned long position); + void get_local_route(const NetPoint* src, const NetPoint* dst, Route* into, double* latency) override; + void set_topology(const std::vector& dimensions); -private: - std::vector dimensions_; + /** @brief Convert topology parameters from string to vector of uint */ + static std::vector parse_topo_parameters(const std::string& topo_parameters); }; + } // namespace routing } // namespace kernel } // namespace simgrid