#ifndef SURF_ROUTING_CLUSTER_TORUS_HPP_
#define SURF_ROUTING_CLUSTER_TORUS_HPP_
+#include <xbt/base.h>
+
#include "surf_routing_none.hpp"
#include "network_interface.hpp"
#include "surf_routing_cluster.hpp"
-class AsClusterTorus: public AsCluster {
-public:
- AsClusterTorus();
- virtual ~AsClusterTorus();
- virtual void create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int rank, int position);
- virtual void getRouteAndLatency(RoutingEdge *src, RoutingEdge *dst, sg_platf_route_cbarg_t into, double *latency);
- void parse_specific_arguments(sg_platf_cluster_cbarg_t cluster);
-
-
- xbt_dynar_t p_dimensions;
-
-};
-
-
+namespace simgrid {
+ namespace surf {
+
+ class XBT_PRIVATE AsClusterTorus:public simgrid::surf::AsCluster {
+ public:
+ AsClusterTorus(const char*name);
+ virtual ~AsClusterTorus();
+ void create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int rank, int position) override;
+ void getRouteAndLatency(NetCard * src, NetCard * dst, sg_platf_route_cbarg_t into, double *latency) override;
+ void parse_specific_arguments(sg_platf_cluster_cbarg_t cluster) override;
+ private:
+ xbt_dynar_t dimensions_ = NULL;
+ };
+
+ }}
#endif