X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/579d27969fbc1fa8004de922816a0068e52a9fa6..3cd6f2bf8f8015a99c9bb351f568f32fe8429a0f:/src/kernel/routing/DragonflyZone.hpp diff --git a/src/kernel/routing/DragonflyZone.hpp b/src/kernel/routing/DragonflyZone.hpp index 2cc15a51fa..6feea64578 100644 --- a/src/kernel/routing/DragonflyZone.hpp +++ b/src/kernel/routing/DragonflyZone.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2014-2016. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2014-2017. 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. */ @@ -17,10 +17,10 @@ public: unsigned int group_; unsigned int chassis_; unsigned int blade_; - surf::Link** blueLinks_ = nullptr; - surf::Link** blackLinks_ = nullptr; - surf::Link** greenLinks_ = nullptr; - surf::Link** myNodes_ = nullptr; + surf::LinkImpl** blueLinks_ = nullptr; + surf::LinkImpl** blackLinks_ = nullptr; + surf::LinkImpl** greenLinks_ = nullptr; + surf::LinkImpl** myNodes_ = nullptr; DragonflyRouter(int i, int j, int k); ~DragonflyRouter(); }; @@ -60,19 +60,19 @@ public: */ class XBT_PRIVATE DragonflyZone : public ClusterZone { public: - explicit DragonflyZone(NetZone* father, const char* name); + explicit DragonflyZone(NetZone* father, std::string name); ~DragonflyZone() override; // void create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int rank, int position) override; - void getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t into, double* latency) override; - void parse_specific_arguments(sg_platf_cluster_cbarg_t cluster) override; + void getLocalRoute(NetPoint* src, NetPoint* dst, sg_platf_route_cbarg_t into, double* latency) override; + void parse_specific_arguments(ClusterCreationArgs* cluster) override; void seal() override; void generateRouters(); void generateLinks(); - void createLink(char* id, int numlinks, Link** linkup, Link** linkdown); - unsigned int* rankId_to_coords(int rankId); + void createLink(const std::string& id, int numlinks, surf::LinkImpl** linkup, surf::LinkImpl** linkdown); private: - sg_platf_cluster_cbarg_t cluster_; + void rankId_to_coords(int rankId, unsigned int (*coords)[4]); + ClusterCreationArgs* cluster_; unsigned int numNodesPerBlade_ = 0; unsigned int numBladesPerChassis_ = 0; unsigned int numChassisPerGroup_ = 0;