Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
add a constructor to the generic parsing logic, and use it to factorize code
[simgrid.git] / src / surf / surf_routing_dijkstra.c
index a27f9aa..9e58253 100644 (file)
@@ -11,7 +11,7 @@ extern routing_global_t global_routing;
 extern routing_component_t current_routing;
 extern model_type_t current_routing_model;
 
-XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_dijkstra, surf, "Routing part of surf");
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_dijkstra, surf, "Routing part of surf -- dijkstra routing logic");
 
 typedef struct {
   s_routing_component_t generic_routing;
@@ -445,26 +445,17 @@ static void dijkstra_finalize(routing_component_t rc)
 
 routing_component_t model_dijkstra_both_create(int cached)
 {
-  routing_component_dijkstra_t new_component =
-      xbt_new0(s_routing_component_dijkstra_t, 1);
-  new_component->generic_routing.set_processing_unit =
-      generic_set_processing_unit;
-  new_component->generic_routing.set_autonomous_system =
-      generic_set_autonomous_system;
+  routing_component_dijkstra_t new_component = (routing_component_dijkstra_t)
+      routmod_generic_create(sizeof(s_routing_component_dijkstra_t));
+
   new_component->generic_routing.set_route = model_dijkstra_both_set_route;
   new_component->generic_routing.set_ASroute = model_dijkstra_both_set_route;
-  new_component->generic_routing.set_bypassroute = generic_set_bypassroute;
   new_component->generic_routing.get_route = dijkstra_get_route;
-  new_component->generic_routing.get_latency = generic_get_link_latency;
   new_component->generic_routing.get_onelink_routes =
       dijkstra_get_onelink_routes;
-  new_component->generic_routing.get_bypass_route =
-      generic_get_bypassroute;
   new_component->generic_routing.finalize = dijkstra_finalize;
   new_component->cached = cached;
-  new_component->generic_routing.to_index = xbt_dict_new();
-  new_component->generic_routing.bypassRoutes = xbt_dict_new();
-  new_component->generic_routing.get_network_element_type = get_network_element_type;
+
   return (routing_component_t)new_component;
 }
 
@@ -478,16 +469,6 @@ routing_component_t model_dijkstracache_create(void)
   return model_dijkstra_both_create(1);
 }
 
-void model_dijkstra_both_load(void)
-{
-  /* use "surfxml_add_callback" to add a parse function call */
-}
-
-void model_dijkstra_both_unload(void)
-{
-  /* use "surfxml_del_callback" to remove a parse function call */
-}
-
 void model_dijkstra_both_end(void)
 {
   routing_component_dijkstra_t routing =