1 #ifndef E_FM_SHARED_TYPES
2 #define E_FM_SHARED_TYPES
7 #if @EEZE_MOUNT_CONFIG@
9 # include <Eeze_Disk.h>
11 #if @DBUS_MOUNT_CONFIG@
15 # define E_DEVICE_TYPE_STORAGE 1
16 # define E_DEVICE_TYPE_VOLUME 2
17 typedef struct _E_Storage E_Storage;
18 typedef struct _E_Volume E_Volume;
19 typedef struct _E_Fm2_Mount E_Fm2_Mount;
23 EFM_MODE_USING_RASTER_MOUNT,
24 EFM_MODE_USING_HAL_MOUNT,
25 EFM_MODE_USING_UDISKS_MOUNT,
26 EFM_MODE_USING_EEZE_MOUNT
31 E_VOLUME_OP_TYPE_NONE,
32 E_VOLUME_OP_TYPE_MOUNT,
33 E_VOLUME_OP_TYPE_UNMOUNT,
34 E_VOLUME_OP_TYPE_EJECT
40 const char *udi; /* with eeze, this is actually the syspath */
41 const char *drive_type;
43 const char *model, *vendor, *serial;
46 Eina_Bool media_available;
47 Eina_Bool system_internal;
48 unsigned long long media_size;
50 Eina_Bool requires_eject;
51 Eina_Bool hotpluggable;
52 Eina_Bool media_check_enabled;
56 const char *drive, *volume;
61 Eina_Bool validated : 1;
62 Eina_Bool trackable : 1;
63 #if @EEZE_MOUNT_CONFIG@
72 const char *udi, *uuid;
73 const char *label, *icon, *fstype;
74 unsigned long long size;
78 const char *partition_label;
80 const char *mount_point;
86 Eina_Bool validated : 1;
88 Eina_Bool auto_unmount : 1; // unmount, when last associated fm window closed
89 Eina_Bool first_time; // volume discovery in init sequence
90 Ecore_Timer *guard; // operation guard timer
91 E_Volume_Op_Type optype;
97 #if @DBUS_MOUNT_CONFIG@
98 DBusPendingCall *op; // d-bus call handle
106 const char *mount_point;
111 Ecore_Cb unmount_fail;
116 Eina_Bool mounted : 1;