Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
remove surf_routing.hpp
[simgrid.git] / src / kernel / routing / ClusterZone.cpp
index 520ac66..f4715b7 100644 (file)
@@ -5,6 +5,7 @@
 
 #include "src/kernel/routing/ClusterZone.hpp"
 #include "src/kernel/routing/NetCard.hpp"
+#include "src/kernel/routing/RoutedZone.hpp"
 #include "src/surf/network_interface.hpp"
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_cluster, surf, "Routing part of surf");
@@ -15,19 +16,19 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_cluster, surf, "Routing part of surf"
 namespace simgrid {
 namespace kernel {
 namespace routing {
-AsCluster::AsCluster(As* father, const char* name) : AsImpl(father, name)
+ClusterZone::ClusterZone(NetZone* father, const char* name) : NetZoneImpl(father, name)
 {
 }
 
-void AsCluster::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t route, double* lat)
+void ClusterZone::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t route, double* lat)
 {
   XBT_VERB("cluster getLocalRoute from '%s'[%d] to '%s'[%d]", src->cname(), src->id(), dst->cname(), dst->id());
   xbt_assert(!privateLinks_.empty(),
              "Cluster routing: no links attached to the source node - did you use host_link tag?");
 
-  if (! src->isRouter()) {    // No specific link for router
+  if (!src->isRouter()) { // No specific link for router
 
-    if((src->id() == dst->id()) && hasLoopback_ ){
+    if ((src->id() == dst->id()) && hasLoopback_) {
       std::pair<Link*, Link*> info = privateLinks_.at(src->id() * linkCountPerNode_);
       route->link_list->push_back(info.first);
       if (lat)
@@ -35,7 +36,7 @@ void AsCluster::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t
       return;
     }
 
-    if (hasLimiter_){          // limiter for sender
+    if (hasLimiter_) { // limiter for sender
       std::pair<Link*, Link*> info = privateLinks_.at(src->id() * linkCountPerNode_ + (hasLoopback_ ? 1 : 0));
       route->link_list->push_back(info.first);
     }
@@ -47,7 +48,6 @@ void AsCluster::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t
       if (lat)
         *lat += info.first->latency();
     }
-
   }
 
   if (backbone_) {
@@ -56,7 +56,7 @@ void AsCluster::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t
       *lat += backbone_->latency();
   }
 
-  if (! dst->isRouter()) {    // No specific link for router
+  if (!dst->isRouter()) { // No specific link for router
     std::pair<Link*, Link*> info = privateLinks_.at(dst->id() * linkCountPerNode_ + hasLoopback_ + hasLimiter_);
 
     if (info.second) { // link down
@@ -64,28 +64,29 @@ void AsCluster::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t
       if (lat)
         *lat += info.second->latency();
     }
-    if (hasLimiter_){          // limiter for receiver
-        info = privateLinks_.at(dst->id() * linkCountPerNode_ + hasLoopback_);
-        route->link_list->push_back(info.first);
+    if (hasLimiter_) { // limiter for receiver
+      info = privateLinks_.at(dst->id() * linkCountPerNode_ + hasLoopback_);
+      route->link_list->push_back(info.first);
     }
   }
 }
 
-void AsCluster::getGraph(xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges)
+void ClusterZone::getGraph(xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges)
 {
-  xbt_assert(router_,"Malformed cluster. This may be because your platform file is a hypergraph while it must be a graph.");
+  xbt_assert(router_,
+             "Malformed cluster. This may be because your platform file is a hypergraph while it must be a graph.");
 
   /* create the router */
   xbt_node_t routerNode = new_xbt_graph_node(graph, router_->cname(), nodes);
 
   xbt_node_t backboneNode = nullptr;
-  if(backbone_) {
+  if (backbone_) {
     backboneNode = new_xbt_graph_node(graph, backbone_->getName(), nodes);
     new_xbt_graph_edge(graph, routerNode, backboneNode, edges);
   }
 
-  for (auto src: vertices_){
-    if (! src->isRouter()) {
+  for (auto src : vertices_) {
+    if (!src->isRouter()) {
       xbt_node_t previous = new_xbt_graph_node(graph, src->cname(), nodes);
 
       std::pair<Link*, Link*> info = privateLinks_.at(src->id());
@@ -115,20 +116,21 @@ void AsCluster::getGraph(xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges)
   }
 }
 
-void AsCluster::create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int , int position){
+void ClusterZone::create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int, int position)
+{
   char* link_id = bprintf("%s_link_%d", cluster->id, id);
 
   s_sg_platf_link_cbarg_t link;
   memset(&link, 0, sizeof(link));
-  link.id = link_id;
+  link.id        = link_id;
   link.bandwidth = cluster->bw;
-  link.latency = cluster->lat;
-  link.policy = cluster->sharing_policy;
+  link.latency   = cluster->lat;
+  link.policy    = cluster->sharing_policy;
   sg_platf_new_link(&link);
 
   Link *linkUp, *linkDown;
   if (link.policy == SURF_LINK_FULLDUPLEX) {
-    char *tmp_link = bprintf("%s_UP", link_id);
+    chartmp_link = bprintf("%s_UP", link_id);
     linkUp         = Link::byName(tmp_link);
     xbt_free(tmp_link);
     tmp_link = bprintf("%s_DOWN", link_id);
@@ -141,5 +143,6 @@ void AsCluster::create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id,
   privateLinks_.insert({position, {linkUp, linkDown}});
   xbt_free(link_id);
 }
-
-}}}
+}
+}
+}