Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
make Model::update_algo a constant field, set at initialization only
[simgrid.git] / src / kernel / resource / Model.cpp
index e53dd16..ee43169 100644 (file)
@@ -12,7 +12,7 @@ namespace simgrid {
 namespace kernel {
 namespace resource {
 
 namespace kernel {
 namespace resource {
 
-Model::Model() = default;
+Model::Model(Model::UpdateAlgo algo) : update_algorithm_(algo) {}
 
 Model::~Model()
 {
 
 Model::~Model()
 {
@@ -39,9 +39,9 @@ Action::ModifiedSet* Model::get_modified_set() const
 double Model::next_occuring_event(double now)
 {
   // FIXME: set the good function once and for all
 double Model::next_occuring_event(double now)
 {
   // FIXME: set the good function once and for all
-  if (update_mechanism_ == UM_LAZY)
+  if (update_algorithm_ == Model::UpdateAlgo::Lazy)
     return next_occuring_event_lazy(now);
     return next_occuring_event_lazy(now);
-  else if (update_mechanism_ == UM_FULL)
+  else if (update_algorithm_ == Model::UpdateAlgo::Full)
     return next_occuring_event_full(now);
   else
     xbt_die("Invalid cpu update mechanism!");
     return next_occuring_event_full(now);
   else
     xbt_die("Invalid cpu update mechanism!");
@@ -140,9 +140,9 @@ double Model::next_occuring_event_full(double /*now*/)
 
 void Model::update_actions_state(double now, double delta)
 {
 
 void Model::update_actions_state(double now, double delta)
 {
-  if (update_mechanism_ == UM_FULL)
+  if (update_algorithm_ == Model::UpdateAlgo::Full)
     update_actions_state_full(now, delta);
     update_actions_state_full(now, delta);
-  else if (update_mechanism_ == UM_LAZY)
+  else if (update_algorithm_ == Model::UpdateAlgo::Lazy)
     update_actions_state_lazy(now, delta);
   else
     xbt_die("Invalid cpu update mechanism!");
     update_actions_state_lazy(now, delta);
   else
     xbt_die("Invalid cpu update mechanism!");