summaryrefslogtreecommitdiff
path: root/device.h
diff options
context:
space:
mode:
Diffstat (limited to 'device.h')
-rw-r--r--device.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/device.h b/device.h
new file mode 100644
index 0000000000..e2597f710d
--- /dev/null
+++ b/device.h
@@ -0,0 +1,29 @@
+/*-*- Mode: C; c-basic-offset: 8 -*-*/
+
+#ifndef foodevicehfoo
+#define foodevicehfoo
+
+typedef struct Device Device;
+
+#include "name.h"
+
+/* We simply watch devices, we cannot plug/unplug them. That
+ * simplifies the state engine greatly */
+typedef enum DeviceState {
+ DEVICE_DEAD,
+ DEVICE_AVAILABLE,
+ _DEVICE_STATE_MAX
+} DeviceState;
+
+struct Device {
+ Meta meta;
+
+ DeviceState state;
+
+ /* A single device can be created by multiple sysfs objects */
+ char **sysfs;
+};
+
+extern const NameVTable device_vtable;
+
+#endif