aboutsummaryrefslogtreecommitdiffhomepage
path: root/evdev.h
diff options
context:
space:
mode:
Diffstat (limited to 'evdev.h')
-rw-r--r--evdev.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/evdev.h b/evdev.h
new file mode 100644
index 0000000..dccc641
--- /dev/null
+++ b/evdev.h
@@ -0,0 +1,24 @@
+#include <sys/types.h>
+#include <linux/input.h>
+
+#include "midimonster.h"
+
+int init();
+static int evdev_configure(char* option, char* value);
+static int evdev_configure_instance(instance* instance, char* option, char* value);
+static instance* evdev_instance();
+static channel* evdev_channel(instance* instance, char* spec);
+static int evdev_set(instance* inst, size_t num, channel** c, channel_value* v);
+static int evdev_handle(size_t num, managed_fd* fds);
+static int evdev_start();
+static int evdev_shutdown();
+
+typedef struct /*_evdev_instance_model*/ {
+ int input_fd;
+ struct libevdev* input_ev;
+ int exclusive;
+
+ int output_enabled;
+ struct libevdev* output_proto;
+ struct libevdev_uinput* output_ev;
+} evdev_instance_data;