master
  1/*
  2 * hidusage.h
  3 *
  4 * HID usages
  5 *
  6 * This file is part of the w32api package.
  7 *
  8 * Contributors:
  9 *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
 10 *   Extended by Kai Tietz
 11 *
 12 * THIS SOFTWARE IS NOT COPYRIGHTED
 13 *
 14 * This source code is offered for use in the public domain. You may
 15 * use, modify or distribute it freely.
 16 *
 17 * This code is distributed in the hope that it will be useful but
 18 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
 19 * DISCLAIMED. This includes but is not limited to warranties of
 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 21 *
 22 */
 23
 24#include <winapifamily.h>
 25
 26#ifndef __HIDUSAGE_H__
 27#define __HIDUSAGE_H__
 28
 29#ifdef __cplusplus
 30extern "C" {
 31#endif
 32
 33#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
 34
 35#define HID_USAGE_PAGE_UNDEFINED ((USAGE) 0x00)
 36#define HID_USAGE_PAGE_GENERIC ((USAGE) 0x01)
 37#define HID_USAGE_PAGE_SIMULATION ((USAGE) 0x02)
 38#define HID_USAGE_PAGE_VR ((USAGE) 0x03)
 39#define HID_USAGE_PAGE_SPORT ((USAGE) 0x04)
 40#define HID_USAGE_PAGE_GAME ((USAGE) 0x05)
 41#define HID_USAGE_PAGE_KEYBOARD ((USAGE) 0x07)
 42#define HID_USAGE_PAGE_LED ((USAGE) 0x08)
 43#define HID_USAGE_PAGE_BUTTON ((USAGE) 0x09)
 44#define HID_USAGE_PAGE_ORDINAL ((USAGE) 0x0a)
 45#define HID_USAGE_PAGE_TELEPHONY ((USAGE) 0x0b)
 46#define HID_USAGE_PAGE_CONSUMER ((USAGE) 0x0c)
 47#define HID_USAGE_PAGE_DIGITIZER ((USAGE) 0x0d)
 48#define HID_USAGE_PAGE_UNICODE ((USAGE) 0x10)
 49#define HID_USAGE_PAGE_ALPHANUMERIC ((USAGE) 0x14)
 50#define HID_USAGE_PAGE_MICROSOFT_BLUETOOTH_HANDSFREE ((USAGE) 0xfff3)
 51
 52#define HID_USAGE_GENERIC_POINTER ((USAGE) 0x01)
 53#define HID_USAGE_GENERIC_MOUSE ((USAGE) 0x02)
 54#define HID_USAGE_GENERIC_JOYSTICK ((USAGE) 0x04)
 55#define HID_USAGE_GENERIC_GAMEPAD ((USAGE) 0x05)
 56#define HID_USAGE_GENERIC_KEYBOARD ((USAGE) 0x06)
 57#define HID_USAGE_GENERIC_KEYPAD ((USAGE) 0x07)
 58#define HID_USAGE_GENERIC_SYSTEM_CTL ((USAGE) 0x80)
 59
 60#define HID_USAGE_GENERIC_X ((USAGE) 0x30)
 61#define HID_USAGE_GENERIC_Y ((USAGE) 0x31)
 62#define HID_USAGE_GENERIC_Z ((USAGE) 0x32)
 63#define HID_USAGE_GENERIC_RX ((USAGE) 0x33)
 64#define HID_USAGE_GENERIC_RY ((USAGE) 0x34)
 65#define HID_USAGE_GENERIC_RZ ((USAGE) 0x35)
 66#define HID_USAGE_GENERIC_SLIDER ((USAGE) 0x36)
 67#define HID_USAGE_GENERIC_DIAL ((USAGE) 0x37)
 68#define HID_USAGE_GENERIC_WHEEL ((USAGE) 0x38)
 69#define HID_USAGE_GENERIC_HATSWITCH ((USAGE) 0x39)
 70#define HID_USAGE_GENERIC_COUNTED_BUFFER ((USAGE) 0x3a)
 71#define HID_USAGE_GENERIC_BYTE_COUNT ((USAGE) 0x3b)
 72#define HID_USAGE_GENERIC_MOTION_WAKEUP ((USAGE) 0x3c)
 73#define HID_USAGE_GENERIC_VX ((USAGE) 0x40)
 74#define HID_USAGE_GENERIC_VY ((USAGE) 0x41)
 75#define HID_USAGE_GENERIC_VZ ((USAGE) 0x42)
 76#define HID_USAGE_GENERIC_VBRX ((USAGE) 0x43)
 77#define HID_USAGE_GENERIC_VBRY ((USAGE) 0x44)
 78#define HID_USAGE_GENERIC_VBRZ ((USAGE) 0x45)
 79#define HID_USAGE_GENERIC_VNO ((USAGE) 0x46)
 80#define HID_USAGE_GENERIC_SYSCTL_POWER ((USAGE) 0x81)
 81#define HID_USAGE_GENERIC_SYSCTL_SLEEP ((USAGE) 0x82)
 82#define HID_USAGE_GENERIC_SYSCTL_WAKE ((USAGE) 0x83)
 83#define HID_USAGE_GENERIC_SYSCTL_CONTEXT_MENU ((USAGE) 0x84)
 84#define HID_USAGE_GENERIC_SYSCTL_MAIN_MENU ((USAGE) 0x85)
 85#define HID_USAGE_GENERIC_SYSCTL_APP_MENU ((USAGE) 0x86)
 86#define HID_USAGE_GENERIC_SYSCTL_HELP_MENU ((USAGE) 0x87)
 87#define HID_USAGE_GENERIC_SYSCTL_MENU_EXIT ((USAGE) 0x88)
 88#define HID_USAGE_GENERIC_SYSCTL_MENU_SELECT ((USAGE) 0x89)
 89#define HID_USAGE_GENERIC_SYSCTL_MENU_RIGHT ((USAGE) 0x8a)
 90#define HID_USAGE_GENERIC_SYSCTL_MENU_LEFT ((USAGE) 0x8b)
 91#define HID_USAGE_GENERIC_SYSCTL_MENU_UP ((USAGE) 0x8c)
 92#define HID_USAGE_GENERIC_SYSCTL_MENU_DOWN ((USAGE) 0x8d)
 93#define HID_USAGE_SIMULATION_RUDDER ((USAGE) 0xba)
 94#define HID_USAGE_SIMULATION_THROTTLE ((USAGE) 0xbb)
 95
 96#define HID_USAGE_KEYBOARD_NOEVENT ((USAGE) 0x00)
 97#define HID_USAGE_KEYBOARD_ROLLOVER ((USAGE) 0x01)
 98#define HID_USAGE_KEYBOARD_POSTFAIL ((USAGE) 0x02)
 99#define HID_USAGE_KEYBOARD_UNDEFINED ((USAGE) 0x03)
100#define HID_USAGE_KEYBOARD_aA ((USAGE) 0x04)
101#define HID_USAGE_KEYBOARD_zZ ((USAGE) 0x1d)
102#define HID_USAGE_KEYBOARD_ONE ((USAGE) 0x1e)
103#define HID_USAGE_KEYBOARD_ZERO ((USAGE) 0x27)
104#define HID_USAGE_KEYBOARD_LCTRL ((USAGE) 0xe0)
105#define HID_USAGE_KEYBOARD_LSHFT ((USAGE) 0xe1)
106#define HID_USAGE_KEYBOARD_LALT ((USAGE) 0xe2)
107#define HID_USAGE_KEYBOARD_LGUI ((USAGE) 0xe3)
108#define HID_USAGE_KEYBOARD_RCTRL ((USAGE) 0xe4)
109#define HID_USAGE_KEYBOARD_RSHFT ((USAGE) 0xe5)
110#define HID_USAGE_KEYBOARD_RALT ((USAGE) 0xe6)
111#define HID_USAGE_KEYBOARD_RGUI ((USAGE) 0xe7)
112#define HID_USAGE_KEYBOARD_SCROLL_LOCK ((USAGE) 0x47)
113#define HID_USAGE_KEYBOARD_NUM_LOCK ((USAGE) 0x53)
114#define HID_USAGE_KEYBOARD_CAPS_LOCK ((USAGE) 0x39)
115
116#define HID_USAGE_KEYBOARD_F1 ((USAGE) 0x3a)
117#define HID_USAGE_KEYBOARD_F12 ((USAGE) 0x45)
118
119#define HID_USAGE_KEYBOARD_RETURN ((USAGE) 0x28)
120#define HID_USAGE_KEYBOARD_ESCAPE ((USAGE) 0x29)
121#define HID_USAGE_KEYBOARD_DELETE ((USAGE) 0x2a)
122#define HID_USAGE_KEYBOARD_PRINT_SCREEN ((USAGE) 0x46)
123
124#define HID_USAGE_LED_NUM_LOCK ((USAGE) 0x01)
125#define HID_USAGE_LED_CAPS_LOCK ((USAGE) 0x02)
126#define HID_USAGE_LED_SCROLL_LOCK ((USAGE) 0x03)
127#define HID_USAGE_LED_COMPOSE ((USAGE) 0x04)
128#define HID_USAGE_LED_KANA ((USAGE) 0x05)
129#define HID_USAGE_LED_POWER ((USAGE) 0x06)
130#define HID_USAGE_LED_SHIFT ((USAGE) 0x07)
131#define HID_USAGE_LED_DO_NOT_DISTURB ((USAGE) 0x08)
132#define HID_USAGE_LED_MUTE ((USAGE) 0x09)
133#define HID_USAGE_LED_TONE_ENABLE ((USAGE) 0x0a)
134#define HID_USAGE_LED_HIGH_CUT_FILTER ((USAGE) 0x0b)
135#define HID_USAGE_LED_LOW_CUT_FILTER ((USAGE) 0x0c)
136#define HID_USAGE_LED_EQUALIZER_ENABLE ((USAGE) 0x0d)
137#define HID_USAGE_LED_SOUND_FIELD_ON ((USAGE) 0x0e)
138#define HID_USAGE_LED_SURROUND_FIELD_ON ((USAGE) 0x0f)
139#define HID_USAGE_LED_REPEAT ((USAGE) 0x10)
140#define HID_USAGE_LED_STEREO ((USAGE) 0x11)
141#define HID_USAGE_LED_SAMPLING_RATE_DETECT ((USAGE) 0x12)
142#define HID_USAGE_LED_SPINNING ((USAGE) 0x13)
143#define HID_USAGE_LED_CAV ((USAGE) 0x14)
144#define HID_USAGE_LED_CLV ((USAGE) 0x15)
145#define HID_USAGE_LED_RECORDING_FORMAT_DET ((USAGE) 0x16)
146#define HID_USAGE_LED_OFF_HOOK ((USAGE) 0x17)
147#define HID_USAGE_LED_RING ((USAGE) 0x18)
148#define HID_USAGE_LED_MESSAGE_WAITING ((USAGE) 0x19)
149#define HID_USAGE_LED_DATA_MODE ((USAGE) 0x1a)
150#define HID_USAGE_LED_BATTERY_OPERATION ((USAGE) 0x1b)
151#define HID_USAGE_LED_BATTERY_OK ((USAGE) 0x1c)
152#define HID_USAGE_LED_BATTERY_LOW ((USAGE) 0x1d)
153#define HID_USAGE_LED_SPEAKER ((USAGE) 0x1e)
154#define HID_USAGE_LED_HEAD_SET ((USAGE) 0x1f)
155#define HID_USAGE_LED_HOLD ((USAGE) 0x20)
156#define HID_USAGE_LED_MICROPHONE ((USAGE) 0x21)
157#define HID_USAGE_LED_COVERAGE ((USAGE) 0x22)
158#define HID_USAGE_LED_NIGHT_MODE ((USAGE) 0x23)
159#define HID_USAGE_LED_SEND_CALLS ((USAGE) 0x24)
160#define HID_USAGE_LED_CALL_PICKUP ((USAGE) 0x25)
161#define HID_USAGE_LED_CONFERENCE ((USAGE) 0x26)
162#define HID_USAGE_LED_STAND_BY ((USAGE) 0x27)
163#define HID_USAGE_LED_CAMERA_ON ((USAGE) 0x28)
164#define HID_USAGE_LED_CAMERA_OFF ((USAGE) 0x29)
165#define HID_USAGE_LED_ON_LINE ((USAGE) 0x2a)
166#define HID_USAGE_LED_OFF_LINE ((USAGE) 0x2b)
167#define HID_USAGE_LED_BUSY ((USAGE) 0x2c)
168#define HID_USAGE_LED_READY ((USAGE) 0x2d)
169#define HID_USAGE_LED_PAPER_OUT ((USAGE) 0x2e)
170#define HID_USAGE_LED_PAPER_JAM ((USAGE) 0x2f)
171#define HID_USAGE_LED_REMOTE ((USAGE) 0x30)
172#define HID_USAGE_LED_FORWARD ((USAGE) 0x31)
173#define HID_USAGE_LED_REVERSE ((USAGE) 0x32)
174#define HID_USAGE_LED_STOP ((USAGE) 0x33)
175#define HID_USAGE_LED_REWIND ((USAGE) 0x34)
176#define HID_USAGE_LED_FAST_FORWARD ((USAGE) 0x35)
177#define HID_USAGE_LED_PLAY ((USAGE) 0x36)
178#define HID_USAGE_LED_PAUSE ((USAGE) 0x37)
179#define HID_USAGE_LED_RECORD ((USAGE) 0x38)
180#define HID_USAGE_LED_ERROR ((USAGE) 0x39)
181#define HID_USAGE_LED_SELECTED_INDICATOR ((USAGE) 0x3a)
182#define HID_USAGE_LED_IN_USE_INDICATOR ((USAGE) 0x3b)
183#define HID_USAGE_LED_MULTI_MODE_INDICATOR ((USAGE) 0x3c)
184#define HID_USAGE_LED_INDICATOR_ON ((USAGE) 0x3d)
185#define HID_USAGE_LED_INDICATOR_FLASH ((USAGE) 0x3e)
186#define HID_USAGE_LED_INDICATOR_SLOW_BLINK ((USAGE) 0x3f)
187#define HID_USAGE_LED_INDICATOR_FAST_BLINK ((USAGE) 0x40)
188#define HID_USAGE_LED_INDICATOR_OFF ((USAGE) 0x41)
189#define HID_USAGE_LED_FLASH_ON_TIME ((USAGE) 0x42)
190#define HID_USAGE_LED_SLOW_BLINK_ON_TIME ((USAGE) 0x43)
191#define HID_USAGE_LED_SLOW_BLINK_OFF_TIME ((USAGE) 0x44)
192#define HID_USAGE_LED_FAST_BLINK_ON_TIME ((USAGE) 0x45)
193#define HID_USAGE_LED_FAST_BLINK_OFF_TIME ((USAGE) 0x46)
194#define HID_USAGE_LED_INDICATOR_COLOR ((USAGE) 0x47)
195#define HID_USAGE_LED_RED ((USAGE) 0x48)
196#define HID_USAGE_LED_GREEN ((USAGE) 0x49)
197#define HID_USAGE_LED_AMBER ((USAGE) 0x4a)
198#define HID_USAGE_LED_GENERIC_INDICATOR ((USAGE) 0x4b)
199
200#define HID_USAGE_TELEPHONY_PHONE ((USAGE) 0x01)
201#define HID_USAGE_TELEPHONY_ANSWERING_MACHINE ((USAGE) 0x02)
202#define HID_USAGE_TELEPHONY_MESSAGE_CONTROLS ((USAGE) 0x03)
203#define HID_USAGE_TELEPHONY_HANDSET ((USAGE) 0x04)
204#define HID_USAGE_TELEPHONY_HEADSET ((USAGE) 0x05)
205#define HID_USAGE_TELEPHONY_KEYPAD ((USAGE) 0x06)
206#define HID_USAGE_TELEPHONY_PROGRAMMABLE_BUTTON ((USAGE) 0x07)
207#define HID_USAGE_TELEPHONY_REDIAL ((USAGE) 0x24)
208#define HID_USAGE_TELEPHONY_TRANSFER ((USAGE) 0x25)
209#define HID_USAGE_TELEPHONY_DROP ((USAGE) 0x26)
210#define HID_USAGE_TELEPHONY_LINE ((USAGE) 0x2a)
211#define HID_USAGE_TELEPHONY_RING_ENABLE ((USAGE) 0x2d)
212#define HID_USAGE_TELEPHONY_SEND ((USAGE) 0x31)
213#define HID_USAGE_TELEPHONY_KEYPAD_0 ((USAGE) 0xb0)
214#define HID_USAGE_TELEPHONY_KEYPAD_D ((USAGE) 0xbf)
215#define HID_USAGE_TELEPHONY_HOST_AVAILABLE ((USAGE) 0xf1)
216
217#define HID_USAGE_MS_BTH_HF_DIALNUMBER ((USAGE) 0x21)
218#define HID_USAGE_MS_BTH_HF_DIALMEMORY ((USAGE) 0x22)
219
220#define HID_USAGE_CONSUMERCTRL ((USAGE)0x01)
221
222#define HID_USAGE_DIGITIZER_PEN ((USAGE)0x02)
223#define HID_USAGE_DIGITIZER_IN_RANGE ((USAGE)0x32)
224#define HID_USAGE_DIGITIZER_TIP_SWITCH ((USAGE)0x42)
225#define HID_USAGE_DIGITIZER_BARREL_SWITCH ((USAGE)0x44)
226
227typedef USHORT USAGE,*PUSAGE;
228
229#endif
230
231#ifdef __cplusplus
232}
233#endif
234#endif