Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
couple of new sg_exec_* functions
[simgrid.git] / src / instr / instr_paje_containers.cpp
index 63b9a03..14c49d9 100644 (file)
@@ -1,8 +1,9 @@
-/* Copyright (c) 2010-2019. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2010-2020. The SimGrid Team. All rights reserved.          */
 
 /* 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/Exception.hpp"
 #include "simgrid/s4u/Engine.hpp"
 #include "simgrid/s4u/Host.hpp"
 #include "src/instr/instr_private.hpp"
@@ -19,8 +20,6 @@ double prefix = 0.0;                               // TI specific
 
 static container_t rootContainer = nullptr;    /* the root container */
 static std::map<std::string, container_t> allContainers; /* all created containers indexed by name */
-std::set<std::string> trivaNodeTypes;           /* all host types defined */
-std::set<std::string> trivaEdgeTypes;           /* all link types defined */
 
 long long int instr_new_paje_id ()
 {
@@ -59,8 +58,6 @@ RouterContainer::RouterContainer(const std::string& name, Container* father)
 
   netpoint_ = simgrid::s4u::Engine::get_instance()->netpoint_by_name_or_null(get_name());
   xbt_assert(netpoint_, "Element '%s' not found", get_cname());
-
-  trivaNodeTypes.insert(type_->get_name());
 }
 
 HostContainer::HostContainer(simgrid::s4u::Host const& host, NetZoneContainer* father)
@@ -68,10 +65,8 @@ HostContainer::HostContainer(simgrid::s4u::Host const& host, NetZoneContainer* f
 {
   xbt_assert(father, "Only the Root container has no father");
 
-  netpoint_ = host.pimpl_netpoint;
+  netpoint_ = host.get_netpoint();
   xbt_assert(netpoint_, "Element '%s' not found", host.get_cname());
-
-  trivaNodeTypes.insert(type_->get_name());
 }
 
 Container::Container(const std::string& name, const std::string& type_name, Container* father)
@@ -93,13 +88,11 @@ Container::Container(const std::string& name, const std::string& type_name, Cont
 
   //register all kinds by name
   if (not allContainers.emplace(name_, this).second)
-    THROWF(tracing_error, 1, "container %s already present in allContainers data structure", get_cname());
+    throw simgrid::TracingError(
+        XBT_THROW_POINT,
+        simgrid::xbt::string_printf("container %s already present in allContainers data structure", get_cname()));
 
   XBT_DEBUG("Add container name '%s'", get_cname());
-
-  //register NODE types for triva configuration
-  if (type_name == "LINK")
-    trivaNodeTypes.insert(type_->get_name());
 }
 
 Container::~Container()
@@ -237,5 +230,5 @@ VariableType* Container::get_variable(const std::string& name)
   ret->set_calling_container(this);
   return ret;
 }
-}
-}
+} // namespace instr
+} // namespace simgrid