Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use empty() to check whether the container is empty or not.
[simgrid.git] / src / surf / network_ns3.hpp
index 6911f16d2c7094366b4b477c47deac01b7470a3c..abd978b2f945b532b8fc9fa7f259a863c9325bda 100644 (file)
@@ -17,7 +17,7 @@ namespace resource {
 class NetworkNS3Model : public NetworkModel {
 public:
   NetworkNS3Model();
-  ~NetworkNS3Model();
+  ~NetworkNS3Model() = default;
   LinkImpl* create_link(const std::string& name, const std::vector<double>& bandwidth, double latency,
                         s4u::Link::SharingPolicy policy) override;
   Action* communicate(s4u::Host* src, s4u::Host* dst, double size, double rate) override;
@@ -31,14 +31,17 @@ public:
  ************/
 class LinkNS3 : public LinkImpl {
 public:
-  explicit LinkNS3(NetworkNS3Model* model, const std::string& name, double bandwidth, double latency);
+  explicit LinkNS3(NetworkNS3Model* model, const std::string& name, double bandwidth, double latency,
+                   s4u::Link::SharingPolicy policy);
   ~LinkNS3();
+  s4u::Link::SharingPolicy sharing_policy_;
 
   void apply_event(profile::Event* event, double value) override;
   void set_bandwidth(double value) override { THROW_UNIMPLEMENTED; }
   void set_latency(double value) override { THROW_UNIMPLEMENTED; }
   void set_bandwidth_profile(profile::Profile* profile) override;
   void set_latency_profile(profile::Profile* profile) override;
+  s4u::Link::SharingPolicy get_sharing_policy() override {return sharing_policy_;}
 };
 
 /**********