Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
useless cosmetics hinted by qtcreator
[simgrid.git] / src / kernel / lmm / maxmin.hpp
index 4690683..1e3b0d3 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2004-2018. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2004-2019. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
@@ -7,13 +7,9 @@
 #define SURF_MAXMIN_HPP
 
 #include "simgrid/kernel/resource/Action.hpp"
-#include "src/internal_config.h"
-#include "src/surf/surf_interface.hpp"
-#include "surf/surf.hpp"
+#include "simgrid/s4u/Link.hpp"
 #include "xbt/asserts.h"
 #include "xbt/mallocator.h"
-#include "xbt/misc.h"
-#include "xbt/utility.hpp"
 
 #include <boost/intrusive/list.hpp>
 #include <cmath>
@@ -179,7 +175,8 @@ public:
   double consumption_weight;
 };
 
-struct ConstraintLight {
+class ConstraintLight {
+public:
   double remaining_over_usage;
   Constraint* cnst;
 };
@@ -199,13 +196,13 @@ public:
   Constraint(void* id_value, double bound_value);
 
   /** @brief Unshare a constraint. */
-  void unshare() { sharing_policy = 0; }
+  void unshare() { sharing_policy = s4u::Link::SharingPolicy::FATPIPE; }
 
   /**
    * @brief Check if a constraint is shared (shared by default)
    * @return 1 if shared, 0 otherwise
    */
-  int get_sharing_policy() const { return sharing_policy; }
+  s4u::Link::SharingPolicy get_sharing_policy() const { return sharing_policy; }
 
   /**
    * @brief Get the usage of the constraint after the last lmm solve
@@ -300,7 +297,7 @@ public:
   int concurrency_maximum; /* The maximum number of (enabled and disabled) variables associated to the constraint at any
                             * given time (essentially for tracing)*/
 
-  int sharing_policy; /* see @e_surf_link_sharing_policy_t (0: FATPIPE, 1: SHARED, 2: SPLITDUPLEX) */
+  s4u::Link::SharingPolicy sharing_policy;
   int id_int;
   double lambda;
   double new_lambda;
@@ -321,7 +318,7 @@ private:
  */
 class XBT_PUBLIC Variable {
 public:
-  void initialize(simgrid::kernel::resource::Action * id_value, double sharing_weight_value, double bound_value,
+  void initialize(resource::Action* id_value, double sharing_weight_value, double bound_value,
                   int number_of_constraints, unsigned visited_value);
 
   /**
@@ -360,13 +357,13 @@ public:
    * @brief Get the number of constraint associated to a variable
    * @return The number of constraint associated to the variable
    */
-  int get_number_of_constraint() const { return cnsts.size(); }
+  size_t get_number_of_constraint() const { return cnsts.size(); }
 
   /**
    * @brief Get the data associated to a variable
    * @return The data associated to the variable
    */
-  simgrid::kernel::resource::Action* get_id() const { return id; }
+  resource::Action* get_id() const { return id; }
 
   /**
    * @brief Get the weight of a variable
@@ -399,7 +396,7 @@ public:
   double bound;
   double value;
   short int concurrency_share; /* The maximum number of elements that variable will add to a constraint */
-  simgrid::kernel::resource::Action* id;
+  resource::Action* id;
   int id_int;
   unsigned visited; /* used by System::update_modified_set() */
   /* \begin{For Lagrange only} */
@@ -448,8 +445,7 @@ public:
    * @param bound The maximum value of the variable (-1.0 if no maximum value)
    * @param number_of_constraints The maximum number of constraint to associate to the variable
    */
-  Variable* variable_new(simgrid::kernel::resource::Action * id, double weight_value, double bound,
-                         int number_of_constraints);
+  Variable* variable_new(resource::Action* id, double weight_value, double bound, size_t number_of_constraints);
 
   /**
    * @brief Free a variable
@@ -589,7 +585,7 @@ public:
                                                                    &Constraint::saturated_constraint_set_hook>>
       saturated_constraint_set;
 
-  simgrid::kernel::resource::Action::ModifiedSet* modified_set_ = nullptr;
+  resource::Action::ModifiedSet* modified_set_ = nullptr;
 
 private:
   bool selective_update_active; /* flag to update partially the system only selecting changed portions */
@@ -603,7 +599,6 @@ private:
       modified_constraint_set;
   xbt_mallocator_t variable_mallocator_ =
       xbt_mallocator_new(65536, System::variable_mallocator_new_f, System::variable_mallocator_free_f, nullptr);
-  ;
 };
 
 class XBT_PUBLIC FairBottleneck : public System {