X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1ca34b76da924ef9743ce07316d18e69ba45374f..2f4b313c80827568ce888a6bc1575739d002a6c3:/src/surf/network_ib.hpp diff --git a/src/surf/network_ib.hpp b/src/surf/network_ib.hpp index 8d1103e6c0..df41a8873a 100644 --- a/src/surf/network_ib.hpp +++ b/src/surf/network_ib.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2014-2015. The SimGrid Team. +/* Copyright (c) 2014-2017. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -7,9 +7,11 @@ #ifndef SURF_NETWORK_IB_HPP_ #define SURF_NETWORK_IB_HPP_ -#include +#include "src/surf/network_smpi.hpp" +#include "xbt/base.h" -#include "network_smpi.hpp" +#include +#include namespace simgrid { namespace surf { @@ -23,7 +25,7 @@ namespace simgrid { NetworkAction *action; double init_rate; ActiveComm() : destination(nullptr),action(nullptr),init_rate(-1){}; - ~ActiveComm(){}; + virtual ~ActiveComm() = default; }; class IBNode{ @@ -36,12 +38,12 @@ namespace simgrid { //number of comms the node is receiving int nbActiveCommsDown; explicit IBNode(int id) : id(id),nbActiveCommsDown(0){}; - ~IBNode(){}; + virtual ~IBNode() = default; }; class XBT_PRIVATE NetworkIBModel : public NetworkSmpiModel { private: - void updateIBfactors_rec(IBNode *root, bool* updatedlist); + void updateIBfactors_rec(IBNode* root, std::vector& updatedlist); void computeIBfactors(IBNode *root); public: NetworkIBModel(); @@ -49,8 +51,8 @@ namespace simgrid { ~NetworkIBModel() override; void updateIBfactors(NetworkAction *action, IBNode *from, IBNode * to, int remove); - xbt_dict_t active_nodes; - std::map > active_comms; + std::unordered_map active_nodes; + std::unordered_map> active_comms; double Bs; double Be;