mirror of
https://gitlab.freedesktop.org/libevdev/libevdev.git
synced 2025-12-24 12:20:05 +01:00
Add two helper functions to check event type/code
These aren't really that useful since they're just one or two lines in code, but it saves callers from accidentally misplacing braces, etc. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
bafd498b67
commit
e6f85ee1f1
2 changed files with 57 additions and 0 deletions
|
|
@ -928,6 +928,21 @@ libevdev_grab(struct libevdev *dev, int grab)
|
|||
return rc < 0 ? -errno : 0;
|
||||
}
|
||||
|
||||
int
|
||||
libevdev_is_event_type(const struct input_event *ev, unsigned int type)
|
||||
{
|
||||
return type < EV_MAX && ev->type == type;
|
||||
}
|
||||
|
||||
int
|
||||
libevdev_is_event_code(const struct input_event *ev, unsigned int type, unsigned int code)
|
||||
{
|
||||
return type < EV_MAX &&
|
||||
ev->type == type &&
|
||||
(type == EV_SYN || code <= libevdev_get_event_type_max(type)) &&
|
||||
ev->code == code;
|
||||
}
|
||||
|
||||
const char*
|
||||
libevdev_get_event_type_name(unsigned int type)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -867,6 +867,48 @@ int libevdev_disable_event_code(struct libevdev *dev, unsigned int type, unsigne
|
|||
*/
|
||||
int libevdev_kernel_set_abs_value(struct libevdev *dev, unsigned int code, const struct input_absinfo *abs);
|
||||
|
||||
/**
|
||||
* @ingroup misc
|
||||
*
|
||||
* Helper function to check if an event is of a specific type. This is
|
||||
* virtually the same as:
|
||||
*
|
||||
* ev->type == type
|
||||
*
|
||||
* with the exception that some sanity checks are performed to ensure type
|
||||
* is valid.
|
||||
*
|
||||
* @param ev The input event to check
|
||||
* @param type Input event type to compare the event against (EV_REL, EV_ABS,
|
||||
* etc.)
|
||||
*
|
||||
* @return 1 if the event type matches the given type, 0 otherwise (or if
|
||||
* type is invalid)
|
||||
*/
|
||||
int libevdev_is_event_type(const struct input_event *ev, unsigned int type);
|
||||
|
||||
/**
|
||||
* @ingroup misc
|
||||
*
|
||||
* Helper function to check if an event is of a specific type and code. This
|
||||
* is virtually the same as:
|
||||
*
|
||||
* ev->type == type && ev->code == code
|
||||
*
|
||||
* with the exception that some sanity checks are performed to ensure type and
|
||||
* code are valid.
|
||||
*
|
||||
* @param ev The input event to check
|
||||
* @param type Input event type to compare the event against (EV_REL, EV_ABS,
|
||||
* etc.)
|
||||
* @param code Input event code to compare the event against (ABS_X, REL_X,
|
||||
* etc.)
|
||||
*
|
||||
* @return 1 if the event type matches the given type and code, 0 otherwise
|
||||
* (or if type/code are invalid)
|
||||
*/
|
||||
int libevdev_is_event_code(const struct input_event *ev, unsigned int type, unsigned int code);
|
||||
|
||||
/**
|
||||
* @ingroup misc
|
||||
*
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue