Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
further improvement to the doxygen doc
[simgrid.git] / include / simgrid / s4u / Link.hpp
index 3e0832b..c2ac18e 100644 (file)
@@ -45,7 +45,21 @@ protected:
 #endif
 
 public:
-  enum class SharingPolicy { NONLINEAR = 4, WIFI = 3, SPLITDUPLEX = 2, SHARED = 1, FATPIPE = 0 };
+  /** Specifies how a given link is shared between concurrent communications */
+  enum class SharingPolicy {
+    /// This policy takes a callback that specifies the maximal capacity as a function of the number of usage. See the
+    /// examples with 'degradation' in their name.
+    NONLINEAR = 4,
+    /// Pseudo-sharing policy requesting wifi-specific sharing.
+    WIFI = 3,
+    /// Each link is split in 2, UP and DOWN, one per direction. These links are SHARED.
+    SPLITDUPLEX = 2,
+    /// The bandwidth is shared between all comms using that link, regardless of their direction.
+    SHARED = 1,
+    /// Each comm can use the link fully, with no sharing (only a maximum). This is intended to represent the backbone
+    /// links that cannot be saturated by concurrent links, but have a maximal bandwidth.
+    FATPIPE = 0
+  };
 
   kernel::resource::StandardLinkImpl* get_impl() const;
 
@@ -133,10 +147,7 @@ public:
   double get_load() const;
 
 #ifndef DOXYGEN
-  XBT_ATTRIB_DEPRECATED_v337("Please use get_load() instead") double get_usage() const
-  {
-    return get_load();
-  }
+  XBT_ATTRIB_DEPRECATED_v338("Please use get_load() instead") double get_usage() const { return get_load(); }
 #endif
 
   /** @brief Check if the Link is used (at least one flow uses the link) */
@@ -202,7 +213,7 @@ public:
     on_this_destruction.connect(cb);
   }
 
-  XBT_ATTRIB_DEPRECATED_v337("Please use on_onoff_cb() instead") static void on_state_change_cb(
+  XBT_ATTRIB_DEPRECATED_v338("Please use on_onoff_cb() instead") static void on_state_change_cb(
       const std::function<void(Link const&)>& cb)
   {
     on_onoff.connect(cb);