Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
prepare MSG_file_rcopy()
[simgrid.git] / src / include / surf / surf.h
index 0eeb7c2..16da53a 100644 (file)
@@ -409,8 +409,7 @@ XBT_PUBLIC(surf_action_t) surf_workstation_sleep(surf_resource_t resource, doubl
  * @brief Open a file on a workstation
  * 
  * @param workstation The surf workstation
- * @param mount The mount point
- * @param path The path to the file
+ * @param fullpath The path to the file
  * @return The surf action corresponding to the openning
  */
 XBT_PUBLIC(surf_action_t) surf_workstation_open(surf_resource_t workstation, const char* fullpath);
@@ -695,6 +694,18 @@ XBT_PUBLIC(size_t) surf_workstation_get_size(surf_resource_t workstation, surf_f
  */
 XBT_PUBLIC(size_t) surf_workstation_file_tell(surf_resource_t workstation, surf_file_t fd);
 
+/**
+ * @brief Move a file to another location on the *same mount point*.
+ * @details [long description]
+ *
+ * @param workstation The surf workstation
+ * @param fd The file descriptor
+ * @param fullpath The new full path
+ *
+ * @return MSG_OK if successful, otherwise MSG_TASK_CANCELED
+ */
+XBT_PUBLIC(int) surf_workstation_file_move(surf_resource_t workstation, surf_file_t fd, const char* fullpath);
+
 /**
  * @brief Set the position indictator assiociated with the file descriptor to a new position
  * @details [long description]
@@ -710,6 +721,19 @@ XBT_PUBLIC(size_t) surf_workstation_file_tell(surf_resource_t workstation, surf_
  */
 XBT_PUBLIC(int) surf_workstation_file_seek(surf_resource_t workstation, surf_file_t fd, sg_size_t offset, int origin);
 
+/**
+ * @brief Copy a file to another location on a remote host.
+ * @details [long description]
+ *
+ * @param workstation The surf workstation
+ * @param fd The file descriptor
+ * @param host_dest The workstation destination
+ * @param fullpath The new full path
+ *
+ * @return MSG_OK if successful, otherwise MSG_TASK_CANCELED
+ */
+XBT_PUBLIC(int) surf_workstation_file_rcopy(surf_resource_t workstation, surf_file_t fd, surf_resource_t host_dest, const char* fullpath);
+
 /**
  * @brief [brief description]
  * @details [long description]
@@ -751,15 +775,6 @@ XBT_PUBLIC(xbt_dict_t) surf_storage_get_content(surf_resource_t resource);
  */
 XBT_PUBLIC(sg_size_t) surf_storage_get_size(surf_resource_t resource);
 
-/**
- * @brief Rename a path
- * 
- * @param resource The surf storage
- * @param src The old path
- * @param dest The new path
- */
-XBT_PUBLIC(void) surf_storage_rename(surf_resource_t resource, const char* src, const char* dest);
-
 /**
  * @brief Get the data associated to the action
  *