X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/0f5e8daaa6e9f74521068aa75837200bcd182ea6..1943ca63ab0af58abc75c70054783d962737f3e9:/src/include/surf/surf_resource.h diff --git a/src/include/surf/surf_resource.h b/src/include/surf/surf_resource.h index 625fd9ff9e..38df8bee98 100644 --- a/src/include/surf/surf_resource.h +++ b/src/include/surf/surf_resource.h @@ -1,5 +1,5 @@ -/* Copyright (c) 2009, 2010. The SimGrid Team. +/* Copyright (c) 2009-2014. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -9,25 +9,26 @@ #ifndef SURF_RESOURCE_H #define SURF_RESOURCE_H -static XBT_INLINE +/*FIXME:DELETEstatic XBT_INLINE surf_resource_t surf_resource_new(size_t childsize, - surf_model_t model, char *name, - xbt_dict_t props) + surf_model_t model, const char *name, + xbt_dict_t props, void_f_pvoid_t free_f) { surf_resource_t res = xbt_malloc0(childsize); res->model = model; - res->name = name; + res->name = xbt_strdup(name); res->properties = props; + res->free_f=free_f; return res; } static XBT_INLINE void surf_resource_free(void *r) { surf_resource_t resource = r; - if (resource->name) - free(resource->name); - if (resource->properties) - xbt_dict_free(&resource->properties); + if(resource->free_f) + resource->free_f(r); + free(resource->name); + xbt_dict_free(&resource->properties); free(resource); } @@ -39,6 +40,6 @@ static XBT_INLINE const char *surf_resource_name(const void *resource) static XBT_INLINE xbt_dict_t surf_resource_properties(const void *resource) { return ((surf_resource_t) resource)->properties; -} +}*/ #endif /* SURF_RESOURCE_H */