Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
make an As::onRouteCreation signal so that NS3 does not need getOneLinkRoutes afterward
[simgrid.git] / src / surf / surf_routing.hpp
index 72680dc..888e3d0 100644 (file)
@@ -25,53 +25,12 @@ namespace kernel {
 namespace routing {
 
   XBT_PUBLIC_DATA(simgrid::xbt::signal<void(s4u::As*)>) asCreatedCallbacks;
-  XBT_PUBLIC_DATA(simgrid::xbt::signal<void(NetCard*)>) netcardCreatedCallbacks;
 
 /***********
  * Classes *
  ***********/
 
 class XBT_PRIVATE Onelink;
-class RoutingPlatf;
-
-/** @ingroup SURF_routing_interface
- * @brief Network cards are the vertices in the graph representing the network, used to compute paths between nodes.
- *
- * @details This represents a position in the network. One can route information between two netcards
- */
-class NetCard {
-public:
-  enum class Type {
-    Host, Router, As
-  };
-
-  NetCard(std::string name, NetCard::Type componentType, AsImpl* containingAS)
-      : name_(name), componentType_(componentType), containingAS_(containingAS)
-  {
-    if (containingAS != nullptr)
-      id_ = containingAS->addComponent(this);
-    simgrid::kernel::routing::netcardCreatedCallbacks(this);
-  }
-  ~NetCard() = default;
-
-  // Our rank in the vertices_ array of our containing AS.
-  unsigned int id()      {return id_;}
-  std::string name()     { return name_; }
-  const char* cname()    { return name_.c_str(); }
-  // This is the AS in which I am
-  AsImpl *containingAS() {return containingAS_;}
-
-  bool isAS()            {return componentType_ == Type::As;}
-  bool isHost()          {return componentType_ == Type::Host;}
-  bool isRouter()        {return componentType_ == Type::Router;}
-
-
-private:
-  unsigned int id_;
-  std::string name_;
-  NetCard::Type componentType_;
-  AsImpl *containingAS_;
-};
 
 class AsRoute {
 public:
@@ -86,7 +45,7 @@ public:
  */
 class Onelink {
 public:
-  Onelink(Link* link, NetCard* src, NetCard* dst) : src_(src), dst_(dst), link_(link){};
+  Onelink(Link* link, NetCard* src, NetCard* dst) : src_(src), dst_(dst), link_(link) {}
   NetCard* src_;
   NetCard* dst_;
   Link* link_;