Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
63e9d2c8e4bc25c6d88e51384bf7ee561adf6c93
[simgrid.git] / src / surf / storage_private.h
1 /*
2  * storage_private.h
3  *
4  *  Created on: 2 mars 2012
5  *      Author: navarro
6  */
7
8 #ifndef STORAGE_PRIVATE_H_
9 #define STORAGE_PRIVATE_H_
10
11 typedef struct s_storage_type {
12   char *model;
13   xbt_dict_t content;
14   char *type_id;
15   xbt_dict_t properties;
16 } s_storage_type_t, *storage_type_t;
17
18 typedef struct s_mount {
19   void *id;
20   char *name;
21 } s_mount_t, *mount_t;
22
23 typedef struct s_content {
24   char *user_rights;
25   char *user;
26   char *group;
27   char *date;
28   char *time;
29   size_t size;
30 } s_content_t, *content_t;
31
32
33 typedef struct surf_file {
34   char *name;
35   content_t content;
36 } s_surf_file_t;
37
38 typedef struct storage {
39   s_surf_resource_t generic_resource;   /*< Structure with generic data. Needed at begin to interate with SURF */
40   e_surf_resource_state_t state_current;        /*< STORAGE current state (ON or OFF) */
41   lmm_constraint_t constraint;          /* Constraint for maximum bandwidth from connexion */
42   lmm_constraint_t constraint_write;    /* Constraint for maximum write bandwidth*/
43   lmm_constraint_t constraint_read;    /* Constraint for maximum write bandwidth*/
44 } s_storage_t, *storage_t;
45
46 typedef struct surf_action_storage {
47   s_surf_action_lmm_t generic_lmm_action;
48   int index_heap;
49 } s_surf_action_storage_t, *surf_action_storage_t;
50
51 #endif /* STORAGE_PRIVATE_H_ */