X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8a0e2b82a1c0981a84e67f1bb4afb6e16fbf8c3a..8fb33d38a40ca0d377aa543a401d34309514e542:/src/surf/network_ib.hpp diff --git a/src/surf/network_ib.hpp b/src/surf/network_ib.hpp index 2aac5e368e..72eecd3af8 100644 --- a/src/surf/network_ib.hpp +++ b/src/surf/network_ib.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2014-2018. The SimGrid Team. +/* Copyright (c) 2014-2020. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -19,13 +19,10 @@ namespace resource { class XBT_PRIVATE IBNode; -class XBT_PRIVATE ActiveComm { -public: - IBNode* destination; - NetworkAction* action; - double init_rate; - ActiveComm() : destination(nullptr), action(nullptr), init_rate(-1){}; - virtual ~ActiveComm() = default; +struct XBT_PRIVATE ActiveComm { + IBNode* destination = nullptr; + NetworkAction* action = nullptr; + double init_rate = -1; }; class IBNode { @@ -36,30 +33,29 @@ public: // store the number of comms received from each node std::map ActiveCommsDown; // number of comms the node is receiving - int nbActiveCommsDown; - explicit IBNode(int id) : id(id), nbActiveCommsDown(0){}; + int nbActiveCommsDown = 0; + explicit IBNode(int id) : id(id){}; virtual ~IBNode() = default; }; class XBT_PRIVATE NetworkIBModel : public NetworkSmpiModel { -private: - void updateIBfactors_rec(IBNode* root, std::vector& updatedlist); - void computeIBfactors(IBNode* root); + double Bs; + double Be; + double ys; + void updateIBfactors_rec(IBNode* root, std::vector& updatedlist) const; + void computeIBfactors(IBNode* root) const; public: NetworkIBModel(); explicit NetworkIBModel(const char* name); - ~NetworkIBModel() override; - void updateIBfactors(NetworkAction* action, IBNode* from, IBNode* to, int remove); + NetworkIBModel(const NetworkIBModel&) = delete; + NetworkIBModel& operator=(const NetworkIBModel&) = delete; + void updateIBfactors(NetworkAction* action, IBNode* from, IBNode* to, int remove) const; - std::unordered_map active_nodes; + std::unordered_map active_nodes; std::unordered_map> active_comms; - - double Bs; - double Be; - double ys; }; -} +} // namespace resource } // namespace kernel } // namespace simgrid #endif