Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
oops, remove verbose debug output
[simgrid.git] / src / surf / surf_routing.cpp
index 1129d13..06f6880 100644 (file)
@@ -43,7 +43,6 @@ int NS3_HOST_LEVEL;             //host node for ns3
 xbt_lib_t link_lib;
 int SD_LINK_LEVEL;              //Simdag level
 int SURF_LINK_LEVEL;            //Surf level
-int NS3_LINK_LEVEL;             //link for ns3
 
 xbt_lib_t as_router_lib;
 int ROUTING_ASR_LEVEL;          //Routing level
@@ -634,7 +633,7 @@ xbt_dynar_t RoutingPlatf::getOneLinkRoutes(){
 
 xbt_dynar_t RoutingPlatf::recursiveGetOneLinkRoutes(AsPtr rc)
 {
-  xbt_dynar_t ret = xbt_dynar_new(sizeof(OnelinkPtr), xbt_free);
+  xbt_dynar_t ret = xbt_dynar_new(sizeof(OnelinkPtr), xbt_free_f);
 
   //adding my one link routes
   xbt_dynar_t onelink_mine = rc->getOneLinkRoutes();
@@ -846,7 +845,7 @@ static void routing_parse_cluster(sg_platf_cluster_cbarg_t cluster)
     sg_platf_new_AS_begin(&AS);
     ((AsClusterFatTree*)current_routing)->parse_specific_arguments(cluster);
   }
-  
+
   else{
     XBT_DEBUG("<AS id=\"%s\"\trouting=\"Cluster\">", cluster->id);
     AS.routing = A_surfxml_AS_routing_Cluster;
@@ -895,6 +894,15 @@ static void routing_parse_cluster(sg_platf_cluster_cbarg_t cluster)
 
       memset(&host, 0, sizeof(host));
       host.id = host_id;
+      if ((cluster->properties != NULL) && (!xbt_dict_is_empty(cluster->properties))) {
+         xbt_dict_cursor_t cursor=NULL;
+         char *key,*data;
+         host.properties = xbt_dict_new();
+
+         xbt_dict_foreach(cluster->properties,cursor,key,data) {
+                 xbt_dict_set(host.properties, key, xbt_strdup(data),free);
+         }
+      }
       if (cluster->availability_trace && strcmp(cluster->availability_trace, "")) {
         xbt_dict_set(patterns, "radical", bprintf("%d", i), NULL);
         char *avail_file = xbt_str_varsubst(cluster->availability_trace, patterns);
@@ -913,7 +921,7 @@ static void routing_parse_cluster(sg_platf_cluster_cbarg_t cluster)
       } else {
         XBT_DEBUG("\tstate_file=\"\"");
       }
-      
+
       xbt_dynar_t power_state_list = xbt_dynar_new(sizeof(double), NULL);
       xbt_dynar_push(power_state_list,&cluster->power);
       host.power_peak = power_state_list;
@@ -1003,10 +1011,10 @@ static void routing_parse_cluster(sg_platf_cluster_cbarg_t cluster)
     xbt_dynar_free(&radical_ends);
   }
   xbt_dynar_free(&radical_elements);
-  
+
   // For fat trees, the links must be created once all nodes have been added
   if(cluster->topology == SURF_CLUSTER_FAT_TREE) {
-    ((AsClusterFatTree*)current_routing)->create_links(cluster);
+    ((AsClusterFatTree*)current_routing)->create_links();
   }
   // Add a router. It is magically used thanks to the way in which surf_routing_cluster is written,
   // and it's very useful to connect clusters together