Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
convert getCname to get_cname
[simgrid.git] / src / surf / cpu_ti.cpp
index 06a7f58..5800817 100644 (file)
@@ -332,8 +332,8 @@ double CpuTiModel::next_occuring_event(double now)
   }
 
   /* get the min next event if heap not empty */
-  if (not actionHeapIsEmpty())
-    min_action_duration = actionHeapTopDate() - now;
+  if (not get_action_heap().empty())
+    min_action_duration = get_action_heap().top_date() - now;
 
   XBT_DEBUG("Share resources, min next event date: %f", min_action_duration);
 
@@ -342,8 +342,8 @@ double CpuTiModel::next_occuring_event(double now)
 
 void CpuTiModel::update_actions_state(double now, double /*delta*/)
 {
-  while (not actionHeapIsEmpty() && actionHeapTopDate() <= now) {
-    CpuTiAction* action = static_cast<CpuTiAction*>(actionHeapPop());
+  while (not get_action_heap().empty() && double_equals(get_action_heap().top_date(), now, sg_surf_precision)) {
+    CpuTiAction* action = static_cast<CpuTiAction*>(get_action_heap().pop());
     XBT_DEBUG("Action %p: finish", action);
     action->finish(kernel::resource::Action::State::done);
     /* update remaining amount of all actions */
@@ -425,7 +425,7 @@ void CpuTi::apply_event(tmgr_trace_event_t event, double value)
             action.get_state() == kernel::resource::Action::State::not_in_the_system) {
           action.set_finish_time(date);
           action.set_state(kernel::resource::Action::State::failed);
-          action.heapRemove();
+          model()->get_action_heap().remove(&action);
         }
       }
     }
@@ -485,11 +485,11 @@ void CpuTi::update_actions_finish_time(double now)
     }
     /* add in action heap */
     if (min_finish > NO_MAX_DURATION)
-      action.heapUpdate(min_finish, kernel::resource::Action::Type::NOTSET);
+      model()->get_action_heap().update(&action, min_finish, kernel::resource::ActionHeap::Type::unset);
     else
-      action.heapRemove();
+      model()->get_action_heap().remove(&action);
 
-    XBT_DEBUG("Update finish time: Cpu(%s) Action: %p, Start Time: %f Finish Time: %f Max duration %f", getCname(),
+    XBT_DEBUG("Update finish time: Cpu(%s) Action: %p, Start Time: %f Finish Time: %f Max duration %f", get_cname(),
               &action, action.get_start_time(), action.get_finish_time(), action.get_max_duration());
   }
   /* remove from modified cpu */
@@ -548,7 +548,7 @@ void CpuTi::update_remaining_amount(double now)
 
 CpuAction *CpuTi::execution_start(double size)
 {
-  XBT_IN("(%s,%g)", getCname(), size);
+  XBT_IN("(%s,%g)", get_cname(), size);
   CpuTiAction* action = new CpuTiAction(static_cast<CpuTiModel*>(model()), size, isOff(), this);
 
   action_set_.push_back(*action);
@@ -563,7 +563,7 @@ CpuAction *CpuTi::sleep(double duration)
   if (duration > 0)
     duration = std::max(duration, sg_surf_precision);
 
-  XBT_IN("(%s,%g)", getCname(), duration);
+  XBT_IN("(%s,%g)", get_cname(), duration);
   CpuTiAction* action = new CpuTiAction(static_cast<CpuTiModel*>(model()), 1.0, isOff(), this);
 
   action->set_max_duration(duration);
@@ -610,7 +610,7 @@ CpuTiAction::~CpuTiAction()
   if (action_ti_hook.is_linked())
     simgrid::xbt::intrusive_erase(cpu_->action_set_, *this);
   /* remove from heap */
-  heapRemove();
+  get_model()->get_action_heap().remove(this);
   cpu_->set_modified(true);
 }
 
@@ -623,7 +623,7 @@ void CpuTiAction::set_state(Action::State state)
 void CpuTiAction::cancel()
 {
   this->set_state(Action::State::failed);
-  heapRemove();
+  get_model()->get_action_heap().remove(this);
   cpu_->set_modified(true);
 }
 
@@ -632,7 +632,7 @@ void CpuTiAction::suspend()
   XBT_IN("(%p)", this);
   if (suspended_ != Action::SuspendStates::sleeping) {
     suspended_ = Action::SuspendStates::suspended;
-    heapRemove();
+    get_model()->get_action_heap().remove(this);
     cpu_->set_modified(true);
   }
   XBT_OUT();
@@ -663,7 +663,7 @@ void CpuTiAction::set_max_duration(double duration)
     min_finish = get_finish_time();
 
   /* add in action heap */
-  heapUpdate(min_finish, Action::Type::NOTSET);
+  get_model()->get_action_heap().update(this, min_finish, kernel::resource::ActionHeap::Type::unset);
 
   XBT_OUT();
 }