X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/93ca92954ae02f94f5df3d1a3b9f7b6ff5bd9cd2..3736e0252d96679e19cfbe41f3c09833d3734386:/src/surf/cpu_im.c diff --git a/src/surf/cpu_im.c b/src/surf/cpu_im.c index caa3a9d284..0c29222db7 100644 --- a/src/surf/cpu_im.c +++ b/src/surf/cpu_im.c @@ -1,10 +1,12 @@ -/* Copyright (c) 2009, 2010. The SimGrid Team. +/* Copyright (c) 2009-2011. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ #include "surf_private.h" +#include "surf/surf_resource.h" + #undef GENERIC_LMM_ACTION #undef GENERIC_ACTION @@ -88,17 +90,16 @@ static void* cpu_im_create_resource(const char *name, double power_peak, } -static void parse_cpu_im_init(void) +static void parse_cpu_im_init(sg_platf_host_cbarg_t host) { - cpu_im_create_resource(struct_host->V_host_id, - struct_host->V_host_power_peak, - struct_host->V_host_power_scale, - struct_host->V_host_power_trace, - struct_host->V_host_core, - struct_host->V_host_state_initial, - struct_host->V_host_state_trace, - current_property_set); - current_property_set = NULL; + cpu_im_create_resource(host->id, + host->power_peak, + host->power_scale, + host->power_trace, + host->core_amount, + host->initial_state, + host->state_trace, + host->properties); } static void cpu_im_add_traces_cpu(void) @@ -136,9 +137,8 @@ static void cpu_im_add_traces_cpu(void) static void cpu_im_define_callbacks() { - surfxml_add_callback(ETag_surfxml_host_cb_list, parse_cpu_im_init); - surfxml_add_callback(ETag_surfxml_platform_cb_list, - &cpu_im_add_traces_cpu); + sg_platf_host_add_cb(parse_cpu_im_init); + sg_platf_postparse_add_cb(cpu_im_add_traces_cpu); } static int cpu_im_resource_used(void *resource) @@ -162,8 +162,7 @@ static int cpu_im_action_unref(surf_action_t action) ((cpu_Cas01_im_t) ACTION_GET_CPU(action))->action_set); xbt_swag_insert(ACTION_GET_CPU(action), cpu_im_modified_cpu); #ifdef HAVE_TRACING - if (action->category) - xbt_free(action->category); + xbt_free(action->category); #endif surf_action_free(&action); return 1;