Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
remove a few smells in instrumentation
[simgrid.git] / src / instr / instr_paje_containers.cpp
index 5f05440..1306ddc 100644 (file)
@@ -4,7 +4,8 @@
 /* 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. */
 
-#include <simgrid/s4u/host.hpp>
+#include "simgrid/s4u/engine.hpp"
+#include "simgrid/s4u/host.hpp"
 
 #include <xbt/dict.h>
 #include <xbt/lib.h>
@@ -24,8 +25,9 @@ xbt_dict_t trivaEdgeTypes = nullptr;     /* all link types defined */
 
 long long int instr_new_paje_id ()
 {
-  static long long int type_id = 0;
-  return type_id++;
+  static long long int type_id = -1;
+  type_id++;
+  return type_id;
 }
 
 void PJ_container_alloc ()
@@ -71,11 +73,11 @@ container_t PJ_container_new (const char *name, e_container_types kind, containe
       xbt_assert(newContainer->netcard, "Element '%s' not found",name);
       break;
     case INSTR_ROUTER:
-      newContainer->netcard = static_cast<sg_netcard_t>(xbt_lib_get_or_null(as_router_lib,name,ROUTING_ASR_LEVEL));
+      newContainer->netcard = simgrid::s4u::Engine::instance()->netcardByNameOrNull(name);
       xbt_assert(newContainer->netcard, "Element '%s' not found",name);
       break;
     case INSTR_AS:
-      newContainer->netcard = static_cast<sg_netcard_t>(xbt_lib_get_or_null(as_router_lib,name,ROUTING_ASR_LEVEL));
+      newContainer->netcard = simgrid::s4u::Engine::instance()->netcardByNameOrNull(name);
       xbt_assert(newContainer->netcard, "Element '%s' not found",name);
       break;
     default: