X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2c9526a3d18e373a7fbeb6b7ba74b2597ada5d8a..e1552e8f04faf687626d1849f52e67981f1169b7:/src/smpi/include/smpi_comm.hpp diff --git a/src/smpi/include/smpi_comm.hpp b/src/smpi/include/smpi_comm.hpp index a9fa971047..61a494002c 100644 --- a/src/smpi/include/smpi_comm.hpp +++ b/src/smpi/include/smpi_comm.hpp @@ -8,6 +8,7 @@ #include #include +#include #include "smpi_errhandler.hpp" #include "smpi_keyvals.hpp" #include "smpi_group.hpp" @@ -20,7 +21,7 @@ class Comm : public F2C, public Keyval{ friend Topo; MPI_Group group_; SMPI_Topo_type topoType_ = MPI_INVALID_TOPO; - MPI_Topology topo_; // to be replaced by an union + std::shared_ptr topo_; // to be replaced by an union int refcount_ = 1; MPI_Comm leaders_comm_ = MPI_COMM_NULL; // inter-node communicator MPI_Comm intra_comm_ = MPI_COMM_NULL; // intra-node communicator. For MPI_COMM_WORLD this can't be used, as var is @@ -47,6 +48,7 @@ public: int dup_with_info(MPI_Info info, MPI_Comm* newcomm); MPI_Group group(); MPI_Topology topo() { return topo_; } + void set_topo(MPI_Topology topo){topo_=topo;} int size(); int rank(); int id();