XQueryDeviceState

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
XQueryDeviceState(3X11)		 X FUNCTIONS	      XQueryDeviceState(3X11)



NAME
       XQueryDeviceState - query the state of an extension input device.

SYNTAX
       int XQueryDeviceState(Display *display, XDevice *device);

ARGUMENTS
       display	   Specifies the connection to the X server.

       device	   Specifies the device whose state is to be queried.

DESCRIPTION
       The  XQueryDeviceState  request	queries the state of an input device.
       The current state of keys and buttons  (up  or  down),  and  valuators
       (current	 value)	 on the device is reported by this request.  Each key
       or button is represented by a bit in the XDeviceState  structure	 that
       is  returned.   Valuators on the device report 0 if they are reporting
       relative information, and the current  value  if	 they  are  reporting
       absolute information.

       XQueryDeviceState can generate a BadDevice error.

STRUCTURES
       The XDeviceState structure contains:

       typedef struct {
	    XID device_id;
	    int num_classes;
	    XInputClass *data;
       } XDeviceState;

       The XValuatorState structure contains:

       typedef struct {
	    unsigned char class;
	    unsigned char length;
	    unsigned char num_valuators;
	    unsigned char mode;
	    int *valuators;
       } XValuatorState;

       The XKeyState structure contains:

       typedef struct {
	    unsigned char class;
	    unsigned char length;
	    short	  num_keys;
	    char keys[32];
       } XKeyState;

       The XButtonState structure contains:

       typedef struct {
	    unsigned char class;
	    unsigned char length;
	    short	  num_buttons;
	    char buttons[32];
       } XButtonState;

DIAGNOSTICS
       BadDevice   An  invalid	device	was  specified.	 The specified device
		   does not exist or has not been opened by this  client  via
		   XOpenInputDevice.  This error may also occur if some other
		   client has caused the specified device  to  become  the  X
		   keyboard or X pointer device via the XChangeKeyboardDevice
		   or XChangePointerDevice requests.

SEE ALSO
       Programming with Xlib



						      XQueryDeviceState(3X11)