xbt_dynar_t sg_platf_postparse_cb_list = NULL; // of void_f_void_t
xbt_dynar_t sg_platf_prop_cb_list = NULL; // of sg_platf_prop_cb_t
-xbt_dynar_t sg_platf_route_cb_list = NULL; // of sg_platf_route_cb_t
xbt_dynar_t sg_platf_ASroute_cb_list = NULL; // of sg_platf_ASroute_cb_t
xbt_dynar_t sg_platf_bypassRoute_cb_list = NULL; // of sg_platf_bypassRoute_cb_t
xbt_dynar_t sg_platf_bypassASroute_cb_list = NULL; // of sg_platf_bypassASroute_cb_t
sg_platf_postparse_cb_list = xbt_dynar_new(sizeof(sg_platf_link_cb_t),NULL);
sg_platf_prop_cb_list = xbt_dynar_new(sizeof(sg_platf_prop_cb_t),NULL);
- sg_platf_route_cb_list = xbt_dynar_new(sizeof(sg_platf_route_cb_t), NULL);
sg_platf_ASroute_cb_list = xbt_dynar_new(sizeof(sg_platf_route_cb_t), NULL);
sg_platf_bypassRoute_cb_list = xbt_dynar_new(sizeof(sg_platf_route_cb_t), NULL);
sg_platf_bypassASroute_cb_list = xbt_dynar_new(sizeof(sg_platf_route_cb_t), NULL);
xbt_dynar_free(&sg_platf_trace_cb_list);
xbt_dynar_free(&sg_platf_trace_connect_cb_list);
- xbt_dynar_free(&sg_platf_route_cb_list);
xbt_dynar_free(&sg_platf_ASroute_cb_list);
xbt_dynar_free(&sg_platf_bypassRoute_cb_list);
xbt_dynar_free(&sg_platf_bypassASroute_cb_list);
xbt_dynar_push(mount_list, &mnt);
}
-void sg_platf_new_route(sg_platf_route_cbarg_t route) {
- unsigned int iterator;
- sg_platf_route_cb_t fun;
- xbt_dynar_foreach(sg_platf_route_cb_list, iterator, fun) {
- fun(route);
- }
+void sg_platf_new_route(sg_platf_route_cbarg_t route)
+{
+ routing_get_current()->parseRoute(route);
}
+
void sg_platf_new_ASroute(sg_platf_route_cbarg_t ASroute) {
unsigned int iterator;
sg_platf_route_cb_t fun;
void sg_platf_postparse_add_cb(void_f_void_t fct) {
xbt_dynar_push(sg_platf_postparse_cb_list, &fct);
}
-void sg_platf_route_add_cb(sg_platf_route_cb_t fct) {
- xbt_dynar_push(sg_platf_route_cb_list, &fct);
-}
void sg_platf_ASroute_add_cb(sg_platf_route_cb_t fct) {
xbt_dynar_push(sg_platf_ASroute_cb_list, &fct);
}
return routingEdge;
}
-/**
- * \brief Store the route by calling the set_route function of the current routing component
- */
-static void parse_E_route(sg_platf_route_cbarg_t route)
-{
- /*FIXME:REMOVE:xbt_assert(current_routing->parse_route,
- "no defined method \"set_route\" in \"%s\"",
- current_routing->name);*/
-
- current_routing->parseRoute(route);
-}
-
/**
* \brief Store the ASroute by calling the set_ASroute function of the current routing component
*/
void routing_register_callbacks()
{
- sg_platf_route_add_cb(parse_E_route);
sg_platf_ASroute_add_cb(parse_E_ASroute);
sg_platf_bypassRoute_add_cb(parse_E_bypassRoute);
sg_platf_bypassASroute_add_cb(parse_E_bypassASroute);