From 4ddbd30b67dea473bb8c43c6c226a3b3a5af987e Mon Sep 17 00:00:00 2001 From: Martin Quinson Date: Wed, 9 Nov 2011 16:50:42 +0100 Subject: [PATCH] I don't see the point of declaring and calling empty functions *_load *_unload callbacks of the routing logics seem unused. We could maybe kill them? --- src/surf/surf_private.h | 6 ++++-- src/surf/surf_routing.c | 32 +++++++++++++++++--------------- src/surf/surf_routing_dijkstra.c | 10 ---------- src/surf/surf_routing_floyd.c | 10 ---------- src/surf/surf_routing_full.c | 10 ---------- src/surf/surf_routing_none.c | 11 ----------- src/surf/surf_routing_private.h | 9 --------- 7 files changed, 21 insertions(+), 67 deletions(-) diff --git a/src/surf/surf_private.h b/src/surf/surf_private.h index 0bd3e07bc9..fa1f009c34 100644 --- a/src/surf/surf_private.h +++ b/src/surf/surf_private.h @@ -107,8 +107,10 @@ typedef struct s_model_type { const char *name; const char *desc; routing_component_t (*create) (); - void (*load) (); - void (*unload) (); + void (*load) (); /* Add parsing callbacks for the time of the creation of this AS + FIXME: that feature is unused and could maybe be killed? */ + void (*unload) (); /* Remove the callbacks at the end of this AS's creation + FIXME: that feature is unused and could maybe be killed? */ void (*end) (); } s_model_type_t, *model_type_t; diff --git a/src/surf/surf_routing.c b/src/surf/surf_routing.c index b5a2578952..20dba8ab68 100644 --- a/src/surf/surf_routing.c +++ b/src/surf/surf_routing.c @@ -71,26 +71,24 @@ typedef enum { struct s_model_type routing_models[] = { {"Full", "Full routing data (fast, large memory requirements, fully expressive)", - model_full_create, model_full_load, model_full_unload, model_full_end}, + model_full_create, NULL,NULL, model_full_end}, {"Floyd", "Floyd routing data (slow initialization, fast lookup, lesser memory requirements, shortest path routing only)", - model_floyd_create, model_floyd_load, model_floyd_unload, model_floyd_end}, + model_floyd_create, NULL,NULL, model_floyd_end}, {"Dijkstra", "Dijkstra routing data (fast initialization, slow lookup, small memory requirements, shortest path routing only)", - model_dijkstra_create, model_dijkstra_both_load, - model_dijkstra_both_unload, model_dijkstra_both_end}, + model_dijkstra_create, NULL,NULL, model_dijkstra_both_end}, {"DijkstraCache", "Dijkstra routing data (fast initialization, fast lookup, small memory requirements, shortest path routing only)", - model_dijkstracache_create, model_dijkstra_both_load, - model_dijkstra_both_unload, model_dijkstra_both_end}, + model_dijkstracache_create, NULL,NULL, model_dijkstra_both_end}, {"none", "No routing (usable with Constant network only)", - model_none_create, model_none_load, model_none_unload, model_none_end}, + model_none_create, NULL, NULL, NULL}, {"RuleBased", "Rule-Based routing data (...)", - model_rulebased_create, model_none_load, model_none_unload, model_none_end}, + model_rulebased_create, NULL, NULL, NULL}, {"Vivaldi", "Vivaldi routing", - model_vivaldi_create, model_none_load, model_none_unload, model_none_end}, + model_vivaldi_create, NULL, NULL, NULL}, {"Cluster", "Cluster routing", - model_cluster_create, model_none_load, model_cluster_unload, model_none_end}, + model_cluster_create, NULL, NULL, NULL}, {NULL, NULL, NULL, NULL, NULL, NULL} }; @@ -350,13 +348,15 @@ void routing_AS_open(const char *AS_id, const char *wanted_routing_type) /* add to the father element list */ (*(current_routing->set_autonomous_system)) (current_routing, AS_id); /* unload the prev parse rules */ - (*(current_routing->routing->unload)) (); + if (current_routing->routing->unload) + (*(current_routing->routing->unload)) (); } else { THROWF(arg_error, 0, "All defined components must be belong to a AS"); } /* set the new parse rules */ - (*(new_routing->routing->load)) (); + if (new_routing->routing->load) + (*(new_routing->routing->load)) (); /* set the new current component of the tree */ current_routing = new_routing; } @@ -388,10 +388,12 @@ void routing_AS_close() xbt_lib_set(as_router_lib, current_routing->name, ROUTING_ASR_LEVEL, (void *) info); - (*(current_routing->routing->unload)) (); - (*(current_routing->routing->end)) (); + if (current_routing->routing->unload) + (*(current_routing->routing->unload)) (); + if (current_routing->routing->end) + (*(current_routing->routing->end)) (); current_routing = current_routing->routing_father; - if (current_routing != NULL) + if (current_routing != NULL && current_routing->routing->load != NULL) (*(current_routing->routing->load)) (); } } diff --git a/src/surf/surf_routing_dijkstra.c b/src/surf/surf_routing_dijkstra.c index a27f9aa5a1..82f192495b 100644 --- a/src/surf/surf_routing_dijkstra.c +++ b/src/surf/surf_routing_dijkstra.c @@ -478,16 +478,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 = diff --git a/src/surf/surf_routing_floyd.c b/src/surf/surf_routing_floyd.c index 390a28ef52..4b423e74a6 100644 --- a/src/surf/surf_routing_floyd.c +++ b/src/surf/surf_routing_floyd.c @@ -198,16 +198,6 @@ routing_component_t model_floyd_create(void) return (routing_component_t)new_component; } -void model_floyd_load(void) -{ - /* use "surfxml_add_callback" to add a parse function call */ -} - -void model_floyd_unload(void) -{ - /* use "surfxml_del_callback" to remove a parse function call */ -} - void model_floyd_end(void) { diff --git a/src/surf/surf_routing_full.c b/src/surf/surf_routing_full.c index 1673f86226..2e81d2385a 100644 --- a/src/surf/surf_routing_full.c +++ b/src/surf/surf_routing_full.c @@ -148,16 +148,6 @@ routing_component_t model_full_create(void) return (routing_component_t) new_component; } -void model_full_load(void) -{ - /* use "surfxml_add_callback" to add a parse function call */ -} - -void model_full_unload(void) -{ - /* use "surfxml_del_callback" to remove a parse function call */ -} - void model_full_end(void) { unsigned int i; diff --git a/src/surf/surf_routing_none.c b/src/surf/surf_routing_none.c index c26c777fa1..8d008d744a 100644 --- a/src/surf/surf_routing_none.c +++ b/src/surf/surf_routing_none.c @@ -72,14 +72,3 @@ routing_component_t model_none_create(void) return (routing_component_t) new_component; } -void model_none_load(void) -{ -} - -void model_none_unload(void) -{ -} - -void model_none_end(void) -{ -} diff --git a/src/surf/surf_routing_private.h b/src/surf/surf_routing_private.h index a18de1e281..27d520416d 100644 --- a/src/surf/surf_routing_private.h +++ b/src/surf/surf_routing_private.h @@ -65,8 +65,6 @@ void generic_src_dst_check(routing_component_t rc, const char *src, /* ************************************************************************** */ /* *************************** FLOYD ROUTING ******************************** */ routing_component_t model_floyd_create(void); /* create structures for floyd routing model */ -void model_floyd_load(void); /* load parse functions for floyd routing model */ -void model_floyd_unload(void); /* unload parse functions for floyd routing model */ void model_floyd_end(void); /* finalize the creation of floyd routing model */ void model_floyd_set_route(routing_component_t rc, const char *src, const char *dst, name_route_extended_t route); @@ -95,8 +93,6 @@ routing_component_t model_vivaldi_create(void); /* create structures for vi routing_component_t model_dijkstra_both_create(int cached); /* create by calling dijkstra or dijkstracache */ routing_component_t model_dijkstra_create(void); /* create structures for dijkstra routing model */ routing_component_t model_dijkstracache_create(void); /* create structures for dijkstracache routing model */ -void model_dijkstra_both_load(void); /* load parse functions for dijkstra routing model */ -void model_dijkstra_both_unload(void); /* unload parse functions for dijkstra routing model */ void model_dijkstra_both_end(void); /* finalize the creation of dijkstra routing model */ void model_dijkstra_both_set_route (routing_component_t rc, const char *src, const char *dst, name_route_extended_t route); @@ -104,8 +100,6 @@ void model_dijkstra_both_set_route (routing_component_t rc, const char *src, /* ************************************************************************** */ /* *************************** FULL ROUTING ********************************* */ routing_component_t model_full_create(void); /* create structures for full routing model */ -void model_full_load(void); /* load parse functions for full routing model */ -void model_full_unload(void); /* unload parse functions for full routing model */ void model_full_end(void); /* finalize the creation of full routing model */ void model_full_set_route( /* Set the route and ASroute between src and dst */ routing_component_t rc, const char *src, const char *dst, name_route_extended_t route); @@ -113,8 +107,5 @@ void model_full_set_route( /* Set the route and ASroute between src and dst */ /* ************************************************************************** */ /* ******************************* NO ROUTING ******************************* */ routing_component_t model_none_create(void); /* none routing model */ -void model_none_load(void); /* none routing model */ -void model_none_unload(void); /* none routing model */ -void model_none_end(void); /* none routing model */ #endif /* _SURF_SURF_ROUTING_PRIVATE_H */ -- 2.20.1