Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
routing: rename and sort things
[simgrid.git] / src / surf / network_constant.cpp
index b9c0d76..6114f6f 100644 (file)
@@ -5,17 +5,11 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include "network_constant.hpp"
-#include "surf/random_mgr.h"
 
 #include "host_interface.hpp"
+#include "src/surf/platform.hpp"
 
 XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_network);
-static int host_number_int = 0;
-
-static void netcste_parse_nolink(sg_platf_link_cbarg_t link){
-       xbt_die("There is no link in the Constant network model. "
-                       "Please remove any link from your platform (and switch to routing='None')");
-}
 
 /*********
  * Model *
@@ -23,30 +17,31 @@ static void netcste_parse_nolink(sg_platf_link_cbarg_t link){
 void surf_network_model_init_Constant()
 {
   xbt_assert(surf_network_model == NULL);
-  surf_network_model = new NetworkConstantModel();
+  surf_network_model = new simgrid::surf::NetworkConstantModel();
+  xbt_dynar_push(all_existing_models, &surf_network_model);
 
   routing_model_create(NULL);
 
-  hostCreatedCallbacks.connect([](Host*) {
-    host_number_int++;
+  simgrid::surf::on_link.connect([](sg_platf_link_cbarg_t link){
+      xbt_die("There is no link in the Constant network model. "
+          "Please remove any link from your platform (and switch to routing='None')");
   });
-  sg_platf_link_add_cb(netcste_parse_nolink);
-
-  Model *model = surf_network_model;
-  xbt_dynar_push(all_existing_models, &model);
 }
 
-double NetworkConstantModel::shareResources(double /*now*/)
+namespace simgrid {
+namespace surf {
+
+double NetworkConstantModel::next_occuring_event(double /*now*/)
 {
   NetworkConstantAction *action = NULL;
   double min = -1.0;
 
   ActionList *actionSet = getRunningActionSet();
   for(ActionList::iterator it(actionSet->begin()), itend(actionSet->end())
-        ; it != itend ; ++it) {
-       action = static_cast<NetworkConstantAction*>(&*it);
-        if (action->m_latency > 0 && (min < 0 || action->m_latency < min))
-            min = action->m_latency;
+      ; it != itend ; ++it) {
+    action = static_cast<NetworkConstantAction*>(&*it);
+    if (action->m_latency > 0 && (min < 0 || action->m_latency < min))
+      min = action->m_latency;
   }
 
   return min;
@@ -57,9 +52,9 @@ void NetworkConstantModel::updateActionsState(double /*now*/, double delta)
   NetworkConstantAction *action = NULL;
   ActionList *actionSet = getRunningActionSet();
   for(ActionList::iterator it(actionSet->begin()), itNext=it, itend(actionSet->end())
-     ; it != itend ; it=itNext) {
+      ; it != itend ; it=itNext) {
     ++itNext;
-       action = static_cast<NetworkConstantAction*>(&*it);
+    action = static_cast<NetworkConstantAction*>(&*it);
     if (action->m_latency > 0) {
       if (action->m_latency > delta) {
         double_update(&(action->m_latency), delta, sg_surf_precision);
@@ -75,24 +70,24 @@ void NetworkConstantModel::updateActionsState(double /*now*/, double delta)
       action->finish();
       action->setState(SURF_ACTION_DONE);
     } else if ((action->getMaxDuration() != NO_MAX_DURATION)
-               && (action->getMaxDuration() <= 0)) {
+        && (action->getMaxDuration() <= 0)) {
       action->finish();
       action->setState(SURF_ACTION_DONE);
     }
   }
 }
 
-Action *NetworkConstantModel::communicate(RoutingEdge *src, RoutingEdge *dst,
-                                        double size, double rate)
+Action *NetworkConstantModel::communicate(NetCard *src, NetCard *dst,
+    double size, double rate)
 {
-  char *src_name = src->getName();
-  char *dst_name = dst->getName();
+  char *src_name = src->name();
+  char *dst_name = dst->name();
 
   XBT_IN("(%s,%s,%g,%g)", src_name, dst_name, size, rate);
   NetworkConstantAction *action = new NetworkConstantAction(this, size, sg_latency_factor);
   XBT_OUT();
 
-  surf_callback_emit(networkCommunicateCallbacks, action, src, dst, size, rate);
+  networkCommunicateCallbacks(action, src, dst, size, rate);
   return action;
 }
 
@@ -104,10 +99,10 @@ int NetworkConstantAction::unref()
 {
   m_refcount--;
   if (!m_refcount) {
-       if (action_hook.is_linked())
-         p_stateSet->erase(p_stateSet->iterator_to(*this));
+    if (action_hook.is_linked())
+      p_stateSet->erase(p_stateSet->iterator_to(*this));
     delete this;
-  return 1;
+    return 1;
   }
   return 0;
 }
@@ -117,24 +112,5 @@ void NetworkConstantAction::cancel()
   return;
 }
 
-void NetworkConstantAction::setCategory(const char * /*category*/)
-{
-  //ignore completely the categories in constant model, they are not traced
-}
-
-void NetworkConstantAction::suspend()
-{
-  m_suspended = true;
 }
-
-void NetworkConstantAction::resume()
-{
-  if (m_suspended)
-       m_suspended = false;
 }
-
-bool NetworkConstantAction::isSuspended()
-{
-  return m_suspended;
-}
-