Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
make test pass. The finalization barrier is needed in this case, which is suboptimal.
[simgrid.git] / src / surf / SplitDuplexLinkImpl.cpp
index 329955a..99ddebe 100644 (file)
@@ -25,14 +25,12 @@ bool SplitDuplexLinkImpl::is_used() const
   xbt_die("Impossible to call is_used() in split-duplex links. Call it for each individual link.");
 }
 
-void SplitDuplexLinkImpl::set_sharing_policy(s4u::Link::SharingPolicy policy)
+void SplitDuplexLinkImpl::set_sharing_policy(s4u::Link::SharingPolicy policy, const s4u::NonLinearResourceCb& cb)
 {
-  xbt_die("Impossible to change sharing policy of split-duplex links");
-}
-
-s4u::Link::SharingPolicy SplitDuplexLinkImpl::get_sharing_policy() const
-{
-  return sharing_policy_;
+  xbt_assert(policy != s4u::Link::SharingPolicy::SPLITDUPLEX && policy != s4u::Link::SharingPolicy::WIFI,
+             "Invalid sharing policy for split-duplex links");
+  link_up_->set_sharing_policy(policy, cb);
+  link_down_->set_sharing_policy(policy, cb);
 }
 
 void SplitDuplexLinkImpl::set_bandwidth(double value)
@@ -96,4 +94,4 @@ void SplitDuplexLinkImpl::set_concurrency_limit(int limit) const
 
 } // namespace resource
 } // namespace kernel
-} // namespace simgrid
\ No newline at end of file
+} // namespace simgrid