diff options
| -rw-r--r-- | include/evemu.h | 14 | ||||
| -rw-r--r-- | src/evemu.c | 55 |
2 files changed, 69 insertions, 0 deletions
diff --git a/include/evemu.h b/include/evemu.h index 5bfcd3e..2811ff9 100644 --- a/include/evemu.h +++ b/include/evemu.h | |||
| @@ -39,8 +39,22 @@ | |||
| 39 | struct evemu_device *evemu_new(const char *name); | 39 | struct evemu_device *evemu_new(const char *name); |
| 40 | void evemu_delete(struct evemu_device *dev); | 40 | void evemu_delete(struct evemu_device *dev); |
| 41 | 41 | ||
| 42 | int evemu_get_version_major(const struct evemu_device *dev); | ||
| 43 | int evemu_get_version_minor(const struct evemu_device *dev); | ||
| 44 | |||
| 42 | const char *evemu_get_name(const struct evemu_device *dev); | 45 | const char *evemu_get_name(const struct evemu_device *dev); |
| 43 | 46 | ||
| 47 | unsigned int evemu_get_id_bustype(const struct evemu_device *dev); | ||
| 48 | unsigned int evemu_get_id_vendor(const struct evemu_device *dev); | ||
| 49 | unsigned int evemu_get_id_product(const struct evemu_device *dev); | ||
| 50 | unsigned int evemu_get_id_version(const struct evemu_device *dev); | ||
| 51 | |||
| 52 | int evemu_get_abs_minimum(const struct evemu_device *dev, int code); | ||
| 53 | int evemu_get_abs_maximum(const struct evemu_device *dev, int code); | ||
| 54 | int evemu_get_abs_fuzz(const struct evemu_device *dev, int code); | ||
| 55 | int evemu_get_abs_flat(const struct evemu_device *dev, int code); | ||
| 56 | int evemu_get_abs_resolution(const struct evemu_device *dev, int code); | ||
| 57 | |||
| 44 | int evemu_has_prop(const struct evemu_device *dev, int code); | 58 | int evemu_has_prop(const struct evemu_device *dev, int code); |
| 45 | int evemu_has_event(const struct evemu_device *dev, int type, int code); | 59 | int evemu_has_event(const struct evemu_device *dev, int type, int code); |
| 46 | 60 | ||
diff --git a/src/evemu.c b/src/evemu.c index 32f8f06..f37ad05 100644 --- a/src/evemu.c +++ b/src/evemu.c | |||
| @@ -74,11 +74,66 @@ void evemu_delete(struct evemu_device *dev) | |||
| 74 | free(dev); | 74 | free(dev); |
| 75 | } | 75 | } |
| 76 | 76 | ||
| 77 | int evemu_get_version_major(const struct evemu_device *dev) | ||
| 78 | { | ||
| 79 | return dev->version_major; | ||
| 80 | } | ||
| 81 | |||
| 82 | int evemu_get_version_minor(const struct evemu_device *dev) | ||
| 83 | { | ||
| 84 | return dev->version_minor; | ||
| 85 | } | ||
| 86 | |||
| 77 | const char *evemu_get_name(const struct evemu_device *dev) | 87 | const char *evemu_get_name(const struct evemu_device *dev) |
| 78 | { | 88 | { |
| 79 | return dev->name; | 89 | return dev->name; |
| 80 | } | 90 | } |
| 81 | 91 | ||
| 92 | unsigned int evemu_get_id_bustype(const struct evemu_device *dev) | ||
| 93 | { | ||
| 94 | return dev->id.bustype; | ||
| 95 | } | ||
| 96 | |||
| 97 | unsigned int evemu_get_id_vendor(const struct evemu_device *dev) | ||
| 98 | { | ||
| 99 | return dev->id.vendor; | ||
| 100 | } | ||
| 101 | |||
| 102 | unsigned int evemu_get_id_product(const struct evemu_device *dev) | ||
| 103 | { | ||
| 104 | return dev->id.product; | ||
| 105 | } | ||
| 106 | |||
| 107 | unsigned int evemu_get_id_version(const struct evemu_device *dev) | ||
| 108 | { | ||
| 109 | return dev->id.version; | ||
| 110 | } | ||
| 111 | |||
| 112 | int evemu_get_abs_minimum(const struct evemu_device *dev, int code) | ||
| 113 | { | ||
| 114 | return dev->abs[code].minimum; | ||
| 115 | } | ||
| 116 | |||
| 117 | int evemu_get_abs_maximum(const struct evemu_device *dev, int code) | ||
| 118 | { | ||
| 119 | return dev->abs[code].maximum; | ||
| 120 | } | ||
| 121 | |||
| 122 | int evemu_get_abs_fuzz(const struct evemu_device *dev, int code) | ||
| 123 | { | ||
| 124 | return dev->abs[code].fuzz; | ||
| 125 | } | ||
| 126 | |||
| 127 | int evemu_get_abs_flat(const struct evemu_device *dev, int code) | ||
| 128 | { | ||
| 129 | return dev->abs[code].flat; | ||
| 130 | } | ||
| 131 | |||
| 132 | int evemu_get_abs_resolution(const struct evemu_device *dev, int code) | ||
| 133 | { | ||
| 134 | return dev->abs[code].resolution; | ||
| 135 | } | ||
| 136 | |||
| 82 | int evemu_has_prop(const struct evemu_device *dev, int code) | 137 | int evemu_has_prop(const struct evemu_device *dev, int code) |
| 83 | { | 138 | { |
| 84 | return (dev->prop[code >> 3] >> (code & 7)) & 1; | 139 | return (dev->prop[code >> 3] >> (code & 7)) & 1; |
