Scroll to navigation

XQueryDeviceState(3X11) X FUNCTIONS XQueryDeviceState(3X11)

名前

XQueryDeviceState - 拡張入力デバイスの状態を問い合わせる

書式

XQueryDeviceState( display, device)
 

Display * display;
 

XDevice * device;

引き数

display
X サーバへの接続を指定する。
device
状態を問い合わせるデバイスを指定する。

説明

XQueryDeviceState リクエストは入力デバイスの状態を問い合わせる。 このリクエストによってデバイス上のキーやボタン(押されているかどうか)や バリュエータ(現在の値)の現在の状態が通知される。 デバイス上のバリュエータは、相対値の情報の場合には 0 を通知し、絶対値 の情報の場合には現在の値を通知する。
XQueryDeviceState はエラー BadDevice を起こすことがある。

構造体

XDeviceState 構造体の内容を以下に示す。
typedef struct {
	XID device_id;
	int num_classes;
	XInputClass *data;
} XDeviceState;
XValuatorState 構造体の内容を以下に示す。
typedef struct {
	unsigned char class;
	unsigned char length;
	unsigned char num_valuators;
	unsigned char mode;
	int *valuators;
} XValuatorState;
XKeyState 構造体の内容を以下に示す。
typedef struct {
	unsigned char class;
	unsigned char length;
	short         num_keys;
	char keys[32];
} XKeyState;
XButtonState 構造体の内容を以下に示す。
typedef struct {
	unsigned char class;
	unsigned char length;
	short         num_buttons;
	char buttons[32];
} XButtonState;

返り値

BadDevice
不正なデバイスが指定された。指定されたデバイスが存在しないか、そのクラ イアントが XOpenInputDevice を使ってデバイスをオープンしていない。 このエラーは、指定したデバイスが他のクライアントの XChangeKeyboardDevice リクエストや XChangePointerDevice リ クエストによって X のキーボードデバイスや X のポインタデバイスにされた 時にも起こる。

関連項目

Programming with Xlib
Release 6.5 X Version 11