Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Change parameters order for msg_file_read, msg_file_write and in all their internal...
[simgrid.git] / src / simix / smx_user.c
index 77d8254..bcc6ba8 100644 (file)
@@ -1,6 +1,7 @@
 /* smx_user.c - public interface to simix                                   */
 
-/* Copyright (c) 2010-2012. Da SimGrid team. All rights reserved.          */
+/* Copyright (c) 2010-2013. 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. */
@@ -94,6 +95,17 @@ int simcall_host_get_core(smx_host_t host)
   return simcall_BODY_host_get_core(host);
 }
 
+/**
+ * \ingroup simix_host_management
+ * \brief Returns the list of processes attached to the host.
+ *
+ * \param host A SIMIX host
+ * \return the swag of attached processes
+ */
+xbt_swag_t simcall_host_get_process_list(smx_host_t host)
+{
+  return simcall_BODY_host_get_process_list(host);
+}
 
 
 /**
@@ -1163,22 +1175,46 @@ int simcall_sem_get_capacity(smx_sem_t sem)
   return simcall_BODY_sem_get_capacity(sem);
 }
 
+/**
+ * \ingroup simix_file_management
+ * \brief Returns the user data associated to a file.
+ *
+ * \param fd A simix file
+ * \return the user data of this file
+ */
+void* simcall_file_get_data(smx_file_t fd)
+{
+  return simcall_BODY_file_get_data(fd);
+}
+
+/**
+ * \ingroup simix_file_management
+ * \brief Sets the user data associated to a file.
+ *
+ * \param fd A SIMIX file
+ * \param data The user data to set
+ */
+void simcall_file_set_data(smx_file_t fd, void *data)
+{
+  simcall_file_set_data(fd, data);
+}
+
 /**
  * \ingroup simix_file_management
  *
  */
-size_t simcall_file_read(size_t size, smx_file_t fd)
+sg_storage_size_t simcall_file_read(smx_file_t fd, sg_storage_size_t size)
 {
-  return simcall_BODY_file_read(size, fd);
+  return simcall_BODY_file_read(fd, size);
 }
 
 /**
  * \ingroup simix_file_management
  *
  */
-size_t simcall_file_write(size_t size, smx_file_t fd)
+sg_storage_size_t simcall_file_write(smx_file_t fd, sg_storage_size_t size)
 {
-  return simcall_BODY_file_write(size, fd);
+  return simcall_BODY_file_write(fd, size);
 }
 
 /**
@@ -1220,10 +1256,74 @@ xbt_dict_t simcall_file_ls(const char* mount, const char* path)
  * \ingroup simix_file_management
  *
  */
-size_t simcall_file_get_size (smx_file_t fd){
+sg_storage_size_t simcall_file_get_size (smx_file_t fd){
   return simcall_BODY_file_get_size(fd);
 }
 
+/**
+ * \ingroup simix_file_management
+ *
+ */
+xbt_dynar_t simcall_file_get_info(smx_file_t fd)
+{
+  return simcall_BODY_file_get_info(fd);
+}
+
+/**
+ * \ingroup simix_storage_management
+ * \brief Returns the free space size on a given storage element.
+ * \param storage name
+ * \return Return the free space size on a given storage element (as sg_storage_size_t)
+ */
+sg_storage_size_t simcall_storage_get_free_size (const char* name){
+  return simcall_BODY_storage_get_free_size(name);
+}
+
+/**
+ * \ingroup simix_storage_management
+ * \brief Returns the used space size on a given storage element.
+ * \param storage name
+ * \return Return the used space size on a given storage element (as sg_storage_size_t)
+ */
+sg_storage_size_t simcall_storage_get_used_size (const char* name){
+  return simcall_BODY_storage_get_used_size(name);
+}
+
+/**
+ * \ingroup simix_storage_management
+ * \brief Returns the list of storages mounted on an host.
+ * \param host A SIMIX host
+ * \return a dict containing all storages mounted on the host
+ */
+xbt_dict_t simcall_host_get_storage_list(smx_host_t host)
+{
+  return simcall_BODY_host_get_storage_list(host);
+}
+
+/**
+ * \ingroup simix_storage_management
+ * \brief Returns a dict of the properties assigned to a storage element.
+ *
+ * \param storage A storage element
+ * \return The properties of this storage element
+ */
+xbt_dict_t simcall_storage_get_properties(smx_storage_t storage)
+{
+  return simcall_BODY_storage_get_properties(storage);
+}
+
+/**
+ * \ingroup simix_storage_management
+ * \brief Returns a dict containing the content of a storage element.
+ *
+ * \param storage A storage element
+ * \return The content of this storage element as a dict (full path file => size)
+ */
+xbt_dict_t simcall_storage_get_content(smx_storage_t storage)
+{
+  return simcall_BODY_storage_get_content(storage);
+}
+
 #ifdef HAVE_MC
 
 void *simcall_mc_snapshot(void)
@@ -1235,9 +1335,9 @@ int simcall_mc_compare_snapshots(void *s1, void *s2){
   return simcall_BODY_mc_compare_snapshots(s1, s2);
 }
 
-int simcall_mc_random(void)
+int simcall_mc_random(int min, int max)
 {
-  return simcall_BODY_mc_random();
+  return simcall_BODY_mc_random(min, max);
 }