X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/621301e4a3b9734a912f86a08ae9a752fc739321..8be7ea3f9e71cd563e91b6aba63f5c70f043fbd5:/src/msg/msg_host.c diff --git a/src/msg/msg_host.c b/src/msg/msg_host.c index df7253ccb0..29b59089ac 100644 --- a/src/msg/msg_host.c +++ b/src/msg/msg_host.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2004, 2005, 2006, 2007, 2008, 2009, 2010. The SimGrid Team. +/* Copyright (c) 2004-2013. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -13,7 +13,7 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(msg); /** @addtogroup m_host_management - * \htmlonly \endhtmlonly + * \htmlonly \endhtmlonly * (#msg_host_t) and the functions for managing it. * * A location (or host) is any possible place where @@ -338,4 +338,34 @@ double MSG_get_host_consumed_energy(msg_host_t host) { return simcall_host_get_consumed_energy(host); } +/** \ingroup m_host_management + * \brief Return the list of mounted storages on an host. + * \param host a host + * \return a dynar containing all storages mounted on the host + */ +xbt_dynar_t MSG_host_get_storage_list(msg_host_t host) +{ + xbt_assert((host != NULL), "Invalid parameters"); + return (simcall_host_get_storage_list(host)); +} +/** \ingroup msg_host_management + * \brief Return the content of mounted storages on an host. + * \param host a host + * \return a dynar containing content (as a dict) of all storages mounted on the host + */ +xbt_dynar_t MSG_host_get_storage_content(msg_host_t host) +{ + xbt_assert((host != NULL), "Invalid parameters"); + xbt_dynar_t contents = xbt_dynar_new(sizeof(void *),NULL); + msg_storage_t storage; + char* storage_name; + unsigned int i; + xbt_dynar_t storage_list = simcall_host_get_storage_list(host); + xbt_dynar_foreach(storage_list, i, storage_name){ + storage = xbt_lib_get_elm_or_null(storage_lib,storage_name); + xbt_dict_t content = simcall_storage_get_content(storage); + xbt_dynar_push(contents, &content); + } + return contents; +}