X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/582b6f00f1f41d334dbc865dd0b993a7e501f3ba..05ac94f042a0e8534114f7f31a40a36af730a680:/src/surf/storage_private.h diff --git a/src/surf/storage_private.h b/src/surf/storage_private.h index 63e9d2c8e4..f27d6502b9 100644 --- a/src/surf/storage_private.h +++ b/src/surf/storage_private.h @@ -10,9 +10,10 @@ typedef struct s_storage_type { char *model; - xbt_dict_t content; + char *content; char *type_id; xbt_dict_t properties; + unsigned long size; } s_storage_type_t, *storage_type_t; typedef struct s_mount { @@ -20,19 +21,15 @@ typedef struct s_mount { char *name; } s_mount_t, *mount_t; -typedef struct s_content { - char *user_rights; - char *user; - char *group; - char *date; - char *time; - size_t size; -} s_content_t, *content_t; - +typedef struct surf_stat { /* file status structure */ + s_file_stat_t stat; + /* possible additionnal fields (e.g., popularity, last access time to know whether the file is in cache, ...) */ +} s_surf_stat_t; typedef struct surf_file { char *name; - content_t content; + surf_stat_t content; + const char* storage; } s_surf_file_t; typedef struct storage { @@ -40,12 +37,21 @@ typedef struct storage { e_surf_resource_state_t state_current; /*< STORAGE current state (ON or OFF) */ lmm_constraint_t constraint; /* Constraint for maximum bandwidth from connexion */ lmm_constraint_t constraint_write; /* Constraint for maximum write bandwidth*/ - lmm_constraint_t constraint_read; /* Constraint for maximum write bandwidth*/ + lmm_constraint_t constraint_read; /* Constraint for maximum write bandwidth*/ + xbt_dict_t content; /* char * -> s_surf_stat_t */ + unsigned long size; + unsigned long used_size; + xbt_dynar_t write_actions; } s_storage_t, *storage_t; +typedef enum { + READ=0, WRITE, STAT, OPEN, CLOSE +} e_surf_action_storage_type_t; + typedef struct surf_action_storage { s_surf_action_lmm_t generic_lmm_action; - int index_heap; + e_surf_action_storage_type_t type; + void *storage; } s_surf_action_storage_t, *surf_action_storage_t; #endif /* STORAGE_PRIVATE_H_ */