1XQUERYDEVICESTATE(libmansuffix) 2=============================== 3 4NAME 5---- 6 7 XQueryDeviceState - query the state of an extension input 8 device. 9 10SYNOPSIS 11-------- 12 13 #include <X11/extensions/XInput.h> 14 15 XDeviceState* XQueryDeviceState( Display *display, 16 XDevice *device); 17 18 display 19 Specifies the connection to the X server. 20 21 device 22 Specifies the device whose state is to be queried. 23 24DESCRIPTION 25----------- 26 27 The XQueryDeviceState request queries the state of an input 28 device. The current state of keys and buttons (up or down), and 29 valuators (current value) on the device is reported by this 30 request. Each key or button is represented by a bit in the 31 XDeviceState structure that is returned. Valuators on the 32 device report 0 if they are reporting relative information, and 33 the current value if they are reporting absolute information. 34 35 XQueryDeviceState can generate a BadDevice error. 36 37 Structures: 38 39 The XDeviceState structure contains: 40 41 typedef struct { 42 XID device_id; 43 int num_classes; 44 XInputClass *data; 45 } XDeviceState; 46 47 The XValuatorState structure contains: 48 49 typedef struct { 50 unsigned char class; 51 unsigned char length; 52 unsigned char num_valuators; 53 unsigned char mode; 54 int *valuators; 55 } XValuatorState; 56 57 The XKeyState structure contains: 58 59 typedef struct { 60 unsigned char class; 61 unsigned char length; 62 short num_keys; 63 char keys[32]; 64 } XKeyState; 65 66 The XButtonState structure contains: 67 68 typedef struct { 69 unsigned char class; 70 unsigned char length; 71 short num_buttons; 72 char buttons[32]; 73 } XButtonState; 74 75DIAGNOSTICS 76----------- 77 78 BadDevice 79 An invalid device was specified. The specified device 80 does not exist or has not been opened by this client via 81 XOpenInputDevice. This error may also occur if some 82 other client has caused the specified device to become 83 the X keyboard or X pointer device via the 84 XChangeKeyboardDevice or XChangePointerDevice requests. 85