table of contents
STRUCT INPUT_HANDLER(9) | Input Subsystem | STRUCT INPUT_HANDLER(9) |
NAME¶
struct_input_handler - implements one of interfaces for input devices
SYNOPSIS¶
struct input_handler {
void * private;
void (* event) (struct input_handle *handle, unsigned int type, unsigned int code, int value);
void (* events) (struct input_handle *handle,const struct input_value *vals, unsigned int count);
bool (* filter) (struct input_handle *handle, unsigned int type, unsigned int code, int value);
bool (* match) (struct input_handler *handler, struct input_dev *dev);
int (* connect) (struct input_handler *handler, struct input_dev *dev, const struct input_device_id *id);
void (* disconnect) (struct input_handle *handle);
void (* start) (struct input_handle *handle);
bool legacy_minors;
int minor;
const char * name;
const struct input_device_id * id_table;
struct list_head h_list;
struct list_head node; };
MEMBERS¶
private
event
events
filter
match
connect
disconnect
start
legacy_minors
minor
name
id_table
h_list
node
DESCRIPTION¶
Input handlers attach to input devices and create input handles. There are likely several handlers attached to any given input device at the same time. All of them will get their copy of input event generated by the device.
The very same structure is used to implement input filters. Input core allows filters to run first and will not pass event to regular handlers if any of the filters indicate that the event should be filtered (by returning true from their filter method).
Note that input core serializes calls to connect and disconnect methods.
COPYRIGHT¶
January 2017 | Kernel Hackers Manual 4.8. |