Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of https://framagit.org/simgrid/simgrid
[simgrid.git] / src / surf / network_interface.hpp
index fda1a61..c3dbfc0 100644 (file)
@@ -10,8 +10,8 @@
 #include "simgrid/kernel/resource/Resource.hpp"
 #include "simgrid/s4u/Link.hpp"
 #include "src/kernel/lmm/maxmin.hpp"
+#include "src/kernel/resource/profile/trace_mgr.hpp"
 #include "src/surf/PropertyHolder.hpp"
-#include "src/surf/trace_mgr.hpp"
 
 #include <list>
 #include <unordered_map>
@@ -37,6 +37,8 @@ public:
   static simgrid::config::Flag<bool> cfg_crosstraffic;
 
   explicit NetworkModel(Model::UpdateAlgo algo) : Model(algo) {}
+  NetworkModel(const NetworkModel&) = delete;
+  NetworkModel& operator=(const NetworkModel&) = delete;
   ~NetworkModel() override;
 
   /**
@@ -113,6 +115,8 @@ public:
 class LinkImpl : public Resource, public simgrid::surf::PropertyHolder {
 protected:
   LinkImpl(NetworkModel* model, const std::string& name, lmm::Constraint* constraint);
+  LinkImpl(const LinkImpl&) = delete;
+  LinkImpl& operator=(const LinkImpl&) = delete;
   ~LinkImpl() override;
 
 public:
@@ -194,7 +198,7 @@ public:
   NetworkAction(Model* model, double cost, bool failed, lmm::Variable* var) : Action(model, cost, failed, var){};
 
   void set_state(Action::State state) override;
-  virtual std::list<LinkImpl*> links();
+  virtual std::list<LinkImpl*> links() const;
 
   double latency_    = {};
   double lat_current_ = {};