usbwcm - STREAMS module for Wacom USB Tablets
# include <sys/usb/clients/usbinput/usbwcm/usbwcm.h>
The usbwcm STREAMS module processes byte streams generated by a Wacom USB tablet.
The usbwcm module must be pushed on top of the HID class driver. See hid(7D). The usbwcm module translates data from Wacom USB tablet into formatted events expected by Wacom X.org XInputdriver. The event structure is the same as that of FreeBSD uwacom driver.
The event_input structure is defined in: usr/include/sys/usb/clients/usbinput/usbwcm/usbwcm.h
struct event_input { #if defined(_LP64) || defined(_I32LPx) struct timeval32 time; #else struct timeval time; #endif uint16_t type; uint16_t index; int32_t value; };
The event's timestamp. When the event occurred. The timestamp is not defined to be meaningful except by being compared with other input event timestamps.
The event's unique type: button, relative/absolute valuator, sync, and so forth. type is among the following: EVT_SYN, EVT_BTN, EVT_REL, EVT_ABS and EVT_MSC.
The event's sub-type. The index in a button event identifies which button status was changed. Typical button index includes: BTN_LEFT, BTN_RIGHT, BTN_MIDDLE, BTN_SIDE, BTN_EXTRA, BTN_TOOL_PEN, BTN_TOOL_ERASER, BTN_TOOL_PAD, BTN_TOOL_MOUSE, BTN_TIP, BTN_STYLUS_1, BTN_STYLUS_2
For absolute valuators, index is among the following: ABS_X, ABS_Y, ABS_Z, ABS_RX, ABS_RY, ABS_WHEEL, ABS_PRESSURE, ABS_DISTANCE, ABS_TILT_X, ABS_TILT_Y, and ABS_MISC.
The argument is a pointer to an int. This option returns the current version of the event interface implemented by the STREAMS module.
The argument is a pointer to event_dev_id structure. This ioctl returns the identifiers of the device.
struct event_dev_id { uint16_t bus; #defineID_BUS_USB 3 uint16_t vendor; uint16_t product; uint16_t version; };
The argument is a pointer to an variable-length char array. This ioctl returns the event types reported by device:
EVT_SYN, EVT_BTN, EVT_REL, EVT_ABS, EVT_MSC
The argument is a pointer to an event_abs_axis structure. This ioctl returns the ranges, and other parameters for the specified axis.
struct event_abs_axis { int32_t value; int32_t min; int32_t max; int32_t fuzz; int32_t flat; };
32-bit ELF kernel STREAMS module
64-bit ELF kernel STREAMS module
SPARC 64-bit ELF kernel STREAMS module
See attributes(5) for descriptions of the following attributes:
|
ioctl(2), attributes(5), hid(7D)