Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
move parts of the kernel to the right subdir
[simgrid.git] / src / surf / surf_routing.hpp
index ccbb7d6..420557e 100644 (file)
 
 #include "surf_interface.hpp"
 #include "src/surf/xml/platf_private.hpp" // FIXME: including this here is pure madness. KILKILKIL XML.
-#include "src/surf/AsImpl.hpp"
+#include "src/kernel/routing/AsImpl.hpp"
 
 #include <float.h>
 #include <vector>
-#include <map>
 
 SG_BEGIN_DECL()
 XBT_PUBLIC(void) routing_model_create(Link *loopback);
@@ -25,7 +24,7 @@ XBT_PRIVATE xbt_edge_t new_xbt_graph_edge (xbt_graph_t graph, xbt_node_t s, xbt_
 SG_END_DECL()
 
 namespace simgrid {
-namespace surf {
+namespace routing {
 
   XBT_PUBLIC_DATA(simgrid::xbt::signal<void(s4u::As*)>) asCreatedCallbacks;
   XBT_PUBLIC_DATA(simgrid::xbt::signal<void(NetCard*)>) netcardCreatedCallbacks;
@@ -51,18 +50,21 @@ public:
   virtual bool isAS()=0;
   virtual bool isHost()=0;
   virtual bool isRouter()=0;
+  enum class Type {
+    Host, Router, As
+  };
 };
 
 struct XBT_PRIVATE NetCardImpl : public NetCard {
 public:
-  NetCardImpl(const char *name, e_surf_network_element_type_t componentType, AsImpl *containingAS)
+  NetCardImpl(const char *name, NetCard::Type componentType, AsImpl *containingAS)
   : name_(xbt_strdup(name)),
     componentType_(componentType),
     containingAS_(containingAS)
   {
     if (containingAS != nullptr)
       id_ = containingAS->addComponent(this);
-    simgrid::surf::netcardCreatedCallbacks(this);
+    simgrid::routing::netcardCreatedCallbacks(this);
   }
   ~NetCardImpl() { xbt_free(name_);};
 
@@ -70,14 +72,14 @@ public:
   char *name()       override {return name_;}
   AsImpl *containingAS() override {return containingAS_;}
 
-  bool isAS()        override {return componentType_ == SURF_NETWORK_ELEMENT_AS;}
-  bool isHost()      override {return componentType_ == SURF_NETWORK_ELEMENT_HOST;}
-  bool isRouter()    override {return componentType_ == SURF_NETWORK_ELEMENT_ROUTER;}
+  bool isAS()        override {return componentType_ == Type::As;}
+  bool isHost()      override {return componentType_ == Type::Host;}
+  bool isRouter()    override {return componentType_ == Type::Router;}
 
 private:
   int id_ = -1;
   char *name_;
-  e_surf_network_element_type_t componentType_;
+  NetCard::Type componentType_;
   AsImpl *containingAS_;
 };
 
@@ -98,7 +100,7 @@ public:
  */
 XBT_PUBLIC_CLASS RoutingPlatf {
 public:
-  RoutingPlatf(Link *loopback);
+  explicit RoutingPlatf(Link *loopback);
   ~RoutingPlatf();
   AsImpl *root_ = nullptr;
   Link *loopback_;