X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8450617aed163f267a58cf610570af9d7b9d6141..70388188c97f56fbe2b645c9b00dcb05d0b86509:/src/surf/network_constant.c diff --git a/src/surf/network_constant.c b/src/surf/network_constant.c index 5a0cbad452..f4251f081d 100644 --- a/src/surf/network_constant.c +++ b/src/surf/network_constant.c @@ -21,14 +21,14 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_network); static random_data_t random_latency = NULL; static int host_number_int = 0; -static void netcste_count_hosts(void) +static void netcste_count_hosts(surf_parsing_host_arg_t h) { host_number_int++; } -static void netcste_define_callbacks(const char *file) +static void netcste_define_callbacks(void) { - surfxml_add_callback(STag_surfxml_host_cb_list, &netcste_count_hosts); + surf_parse_host_add_cb(netcste_count_hosts); } static int netcste_resource_used(void *resource_id) @@ -41,7 +41,7 @@ static int netcste_action_unref(surf_action_t action) action->refcount--; if (!action->refcount) { xbt_swag_remove(action, action->state_set); - free(action); + surf_action_free(&action); return 1; } return 0; @@ -117,7 +117,7 @@ static surf_action_t netcste_communicate(const char *src_name, { surf_action_network_Constant_t action = NULL; - XBT_IN4("(%s,%s,%g,%g)", src_name, dst_name, size, rate); + XBT_IN("(%s,%s,%g,%g)", src_name, dst_name, size, rate); action = surf_action_new(sizeof(s_surf_action_network_Constant_t), size, @@ -125,7 +125,7 @@ static surf_action_t netcste_communicate(const char *src_name, action->suspended = 0; - action->latency = 1; //random_generate(random_latency); + action->latency = sg_latency_factor; //random_generate(random_latency); action->lat_init = action->latency; if (action->latency <= 0.0) { @@ -134,11 +134,18 @@ static surf_action_t netcste_communicate(const char *src_name, xbt_swag_insert(action, action->generic_action.state_set); } - XBT_OUT; + XBT_OUT(); return (surf_action_t) action; } +#ifdef HAVE_TRACING +static void netcste_action_set_category(surf_action_t action, const char *category) +{ + //ignore completely the categories in constant model, they are not traced +} +#endif + /* returns an array of link_Constant_t */ static xbt_dynar_t netcste_get_route(void *src, void *dst) { @@ -184,7 +191,7 @@ static void netcste_finalize(void) -void surf_network_model_init_Constant(const char *filename) +void surf_network_model_init_Constant() { xbt_assert(surf_network_model == NULL); if (surf_network_model) @@ -220,15 +227,18 @@ void surf_network_model_init_Constant(const char *filename) surf_network_model->extension.network.get_link_latency = netcste_get_link_latency; surf_network_model->extension.network.link_shared = link_shared; +#ifdef HAVE_TRACING + surf_network_model->set_category = netcste_action_set_category; +#endif if (!random_latency) random_latency = random_new(RAND, 100, 0.0, 1.0, .125, .034); - netcste_define_callbacks(filename); + netcste_define_callbacks(); xbt_dynar_push(model_list, &surf_network_model); update_model_description(surf_network_model_description, "Constant", surf_network_model); xbt_cfg_set_string(_surf_cfg_set, "routing", "none"); - routing_model_create(sizeof(double), NULL); + routing_model_create(sizeof(double), NULL, netcste_get_link_latency); }