X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8735a101c4a502473ba7381e88aec514ebe1b828..07f196691f95ce17dcaecb68e984e93df3debb58:/include/simgrid/kernel/routing/TorusZone.hpp diff --git a/include/simgrid/kernel/routing/TorusZone.hpp b/include/simgrid/kernel/routing/TorusZone.hpp index 4eff9c16e0..af661d3b60 100644 --- a/include/simgrid/kernel/routing/TorusZone.hpp +++ b/include/simgrid/kernel/routing/TorusZone.hpp @@ -1,10 +1,10 @@ -/* Copyright (c) 2014-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2014-2023. 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. */ -#ifndef SURF_ROUTING_CLUSTER_TORUS_HPP_ -#define SURF_ROUTING_CLUSTER_TORUS_HPP_ +#ifndef SIMGRID_ROUTING_CLUSTER_TORUS_HPP_ +#define SIMGRID_ROUTING_CLUSTER_TORUS_HPP_ #include @@ -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