typedef struct s_storage_type {
char *model;
- xbt_dict_t content; /* char * -> s_surf_stat_t */
+ char *content;
char *type_id;
xbt_dict_t properties;
+ unsigned long size;
} s_storage_type_t, *storage_type_t;
typedef struct s_mount {
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, *surf_stat_t;
+} s_surf_stat_t;
typedef struct surf_file {
char *name;
surf_stat_t content;
+ const char* storage;
} s_surf_file_t;
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, WRITE, STAT, OPEN, CLOSE
+ READ=0, WRITE, STAT, OPEN, CLOSE, UNLINK, LS
} e_surf_action_storage_type_t;
typedef struct surf_action_storage {
s_surf_action_lmm_t generic_lmm_action;
e_surf_action_storage_type_t type;
+ void *storage;
} s_surf_action_storage_t, *surf_action_storage_t;
#endif /* STORAGE_PRIVATE_H_ */