E_Ukit.h
Go to the documentation of this file.
1 #ifndef E_UKIT_H
2 #define E_UKIT_H
3 
4 #include <Eina.h>
5 #include <E_DBus.h>
6 
13 #define E_UDISKS_BUS "org.freedesktop.UDisks"
14 #define E_UDISKS_PATH "/org/freedesktop/UDisks"
15 #define E_UDISKS_INTERFACE "org.freedesktop.UDisks.Device"
16 
17 #define E_UPOWER_BUS "org.freedesktop.UPower"
18 #define E_UPOWER_PATH "/org/freedesktop/UPower"
19 #define E_UPOWER_INTERFACE "org.freedesktop.UPower.Device"
20 
21 /* message return types */
22 
25 
27 {
28  Eina_List *strings; /* list of const char * */
29 };
30 
32 {
33  Eina_Bool boolean;
34 };
35 
37 {
38  const char *udi;
39 };
40 
42 {
43  const char *udi;
44  const char *capability;
45 };
46 
47 typedef enum
48 {
58 
60 {
62  union
63  {
64  const char *s;
65  int i;
66  Eina_Bool b;
67  double d;
68  uint32_t u;
69  uint64_t t;
70  int64_t x;
71  Eina_List *strlist;
72  } val;
73 };
74 
76 {
77  Eina_Hash *properties;
78 };
79 
80 typedef enum
81 {
90 
91 typedef enum
92 {
101 
102 typedef enum
103 {
114 
115 
120 
124 
125 #ifdef __cplusplus
126 extern "C" {
127 #endif
128 
129  EAPI int e_ukit_init(void);
130  EAPI int e_ukit_shutdown(void);
131 
132  EAPI DBusPendingCall *e_udisks_get_property(E_DBus_Connection *conn, const char *udi, const char *property, E_DBus_Callback_Func cb_func, void *data);
133  EAPI DBusPendingCall *e_udisks_get_all_properties(E_DBus_Connection *conn, const char *udi, E_DBus_Callback_Func cb_func, void *data);
134  EAPI DBusPendingCall *e_udisks_get_all_devices(E_DBus_Connection *conn, E_DBus_Callback_Func cb_func, void *data);
135 
136  EAPI DBusPendingCall *e_upower_get_property(E_DBus_Connection *conn, const char *udi, const char *property, E_DBus_Callback_Func cb_func, void *data);
137  EAPI DBusPendingCall *e_upower_get_all_properties(E_DBus_Connection *conn, const char *udi, E_DBus_Callback_Func cb_func, void *data);
138  EAPI DBusPendingCall *e_upower_get_all_devices(E_DBus_Connection *conn, E_DBus_Callback_Func cb_func, void *data);
139 
140  EAPI DBusPendingCall * e_upower_suspend_allowed(E_DBus_Connection *conn, E_DBus_Callback_Func cb_func, void *data);
141  EAPI DBusPendingCall * e_upower_suspend(E_DBus_Connection *conn, E_DBus_Callback_Func cb_func, void *data);
142  EAPI DBusPendingCall * e_upower_hibernate(E_DBus_Connection *conn, E_DBus_Callback_Func cb_func, void *data);
143  EAPI DBusPendingCall * e_upower_hibernate_allowed(E_DBus_Connection *conn, E_DBus_Callback_Func cb_func, void *data);
144 
145 /* utility functions */
147  EAPI const char *e_ukit_property_string_get(E_Ukit_Properties *properties, const char *key, int *err);
148  EAPI Eina_Bool e_ukit_property_bool_get(E_Ukit_Properties *properties, const char *key, int *err);
149  EAPI int e_ukit_property_int_get(E_Ukit_Properties *properties, const char *key, int *err);
150  EAPI uint32_t e_ukit_property_uint32_get(E_Ukit_Properties *properties, const char *key, int *err);
151  EAPI uint64_t e_ukit_property_uint64_get(E_Ukit_Properties *properties, const char *key, int *err);
152  EAPI int64_t e_ukit_property_int64_get(E_Ukit_Properties *properties, const char *key, int *err);
153  EAPI double e_ukit_property_double_get(E_Ukit_Properties *properties, const char *key, int *err);
154  EAPI const Eina_List *e_ukit_property_strlist_get(E_Ukit_Properties *properties, const char *key, int *err);
155 
156 /* (un)mount */
157  EAPI DBusPendingCall *e_udisks_volume_mount(E_DBus_Connection *conn, const char *udi, const char *fstype, Eina_List *options);
158  EAPI DBusPendingCall *e_udisks_volume_unmount(E_DBus_Connection *conn, const char *udi, Eina_List *options);
159  EAPI DBusPendingCall *e_udisks_volume_eject(E_DBus_Connection *conn, const char *udi, Eina_List *options);
160 
161 #ifdef __cplusplus
162 }
163 #endif
164 
169 #endif