Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
remove the last remainings of the addTraces() pimple \o/
[simgrid.git] / src / surf / host_ptask_L07.cpp
index a3224f7..e31cc32 100644 (file)
@@ -36,9 +36,6 @@ void surf_host_model_init_ptask_L07(void)
 
   // Define the callbacks to parse the XML
   simgrid::surf::on_link.connect(ptask_netlink_parse_init);
-  simgrid::surf::on_postparse.connect([](){
-      surf_host_model->addTraces();
-  });
 
   surf_host_model = new simgrid::surf::HostL07Model();
   xbt_dynar_push(all_existing_models, &surf_host_model);
@@ -332,57 +329,6 @@ Link* NetworkL07Model::createLink(const char *name,
   return link;
 }
 
-void HostL07Model::addTraces()
-{
-  xbt_dict_cursor_t cursor = NULL;
-  char *trace_name, *elm;
-
-  if (!trace_connect_list_host_speed)
-    return;
-
-  /* Connect traces relative to cpu */
-  xbt_dict_foreach(trace_connect_list_host_speed, cursor, trace_name, elm) {
-    tmgr_trace_t trace = (tmgr_trace_t) xbt_dict_get_or_null(traces_set_list, trace_name);
-    Cpu *cpu = sg_host_by_name(elm)->pimpl_cpu;
-
-    xbt_assert(cpu, "Host %s undefined", elm);
-    xbt_assert(trace, "Trace %s undefined", trace_name);
-
-    cpu->set_speed_trace(trace);
-  }
-
-  /* Connect traces relative to network */
-  xbt_dict_foreach(trace_connect_list_link_avail, cursor, trace_name, elm) {
-    tmgr_trace_t trace = (tmgr_trace_t) xbt_dict_get_or_null(traces_set_list, trace_name);
-    LinkL07 *link = static_cast<LinkL07*>(Link::byName(elm));
-
-    xbt_assert(link, "Link %s undefined", elm);
-    xbt_assert(trace, "Trace %s undefined", trace_name);
-
-    link->m_stateEvent = future_evt_set->add_trace(trace, 0.0, link);
-  }
-
-  xbt_dict_foreach(trace_connect_list_link_bw, cursor, trace_name, elm) {
-    tmgr_trace_t trace = (tmgr_trace_t) xbt_dict_get_or_null(traces_set_list, trace_name);
-    LinkL07 *link = static_cast<LinkL07*>(Link::byName(elm));
-
-    xbt_assert(link, "Link %s undefined", elm);
-    xbt_assert(trace, "Trace %s undefined", trace_name);
-
-    link->m_bandwidth.event = future_evt_set->add_trace(trace, 0.0, link);
-  }
-
-  xbt_dict_foreach(trace_connect_list_link_lat, cursor, trace_name, elm) {
-    tmgr_trace_t trace = (tmgr_trace_t) xbt_dict_get_or_null(traces_set_list, trace_name);
-    LinkL07 *link = static_cast<LinkL07*>(Link::byName(elm));
-
-    xbt_assert(link, "Link %s undefined", elm);
-    xbt_assert(trace, "Trace %s undefined", trace_name);
-
-    link->m_latency.event = future_evt_set->add_trace(trace, 0.0, link);
-  }
-}
-
 /************
  * Resource *
  ************/
@@ -397,7 +343,7 @@ CpuL07::CpuL07(CpuL07Model *model, simgrid::s4u::Host *host,
   p_constraint = lmm_constraint_new(model->getMaxminSystem(), this, xbt_dynar_get_as(speedPeakList,pstate,double) * speedScale);
 
   if (speedTrace)
-    p_speedEvent = future_evt_set->add_trace(speedTrace, 0.0, this);
+    p_speed.event = future_evt_set->add_trace(speedTrace, 0.0, this);
 
   if (state_trace)
     p_stateEvent = future_evt_set->add_trace(state_trace, 0.0, this);
@@ -462,14 +408,14 @@ void CpuL07::onSpeedChange() {
   lmm_variable_t var = NULL;
   lmm_element_t elem = NULL;
 
-    lmm_update_constraint_bound(getModel()->getMaxminSystem(), getConstraint(), m_speedPeak * m_speedScale);
+    lmm_update_constraint_bound(getModel()->getMaxminSystem(), getConstraint(), p_speed.peak * p_speed.scale);
     while ((var = lmm_get_var_from_cnst
             (getModel()->getMaxminSystem(), getConstraint(), &elem))) {
       Action *action = static_cast<Action*>(lmm_variable_id(var));
 
       lmm_update_variable_bound(getModel()->getMaxminSystem(),
                                 action->getVariable(),
-                                m_speedScale * m_speedPeak);
+                                p_speed.scale * p_speed.peak);
     }
 
   Cpu::onSpeedChange();
@@ -480,12 +426,12 @@ bool LinkL07::isUsed(){
   return lmm_constraint_used(getModel()->getMaxminSystem(), getConstraint());
 }
 
-void CpuL07::updateState(tmgr_trace_iterator_t triggered, double value){
+void CpuL07::apply_event(tmgr_trace_iterator_t triggered, double value){
   XBT_DEBUG("Updating cpu %s (%p) with value %g", getName(), this, value);
-  if (triggered == p_speedEvent) {
-    m_speedScale = value;
+  if (triggered == p_speed.event) {
+    p_speed.scale = value;
     onSpeedChange();
-    tmgr_trace_event_unref(&p_speedEvent);
+    tmgr_trace_event_unref(&p_speed.event);
   } else if (triggered == p_stateEvent) {
     if (value > 0)
       turnOn();
@@ -497,7 +443,7 @@ void CpuL07::updateState(tmgr_trace_iterator_t triggered, double value){
   }
 }
 
-void LinkL07::updateState(tmgr_trace_iterator_t triggered, double value) {
+void LinkL07::apply_event(tmgr_trace_iterator_t triggered, double value) {
   XBT_DEBUG("Updating link %s (%p) with value=%f", getName(), this, value);
   if (triggered == m_bandwidth.event) {
     updateBandwidth(value);