263 lines
14 KiB
C
263 lines
14 KiB
C
/*
|
|
* Copyright (C) 2015 Austin English
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
*/
|
|
#ifndef __HIDUSAGE_H
|
|
#define __HIDUSAGE_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef USHORT USAGE, *PUSAGE;
|
|
|
|
#define HID_USAGE_CONSUMERCTRL ((USAGE) 0x01)
|
|
|
|
#define HID_USAGE_CONSUMER_VOLUME ((USAGE) 0xE0)
|
|
|
|
#define HID_USAGE_DIGITIZER_PEN ((USAGE) 0x02)
|
|
#define HID_USAGE_DIGITIZER_TOUCH_SCREEN ((USAGE) 0x04)
|
|
#define HID_USAGE_DIGITIZER_TOUCH_PAD ((USAGE) 0x05)
|
|
#define HID_USAGE_DIGITIZER_TIP_PRESSURE ((USAGE) 0x30)
|
|
#define HID_USAGE_DIGITIZER_IN_RANGE ((USAGE) 0x32)
|
|
#define HID_USAGE_DIGITIZER_X_TILT ((USAGE) 0x3D)
|
|
#define HID_USAGE_DIGITIZER_Y_TILT ((USAGE) 0x3E)
|
|
#define HID_USAGE_DIGITIZER_AZIMUTH ((USAGE) 0x3F)
|
|
#define HID_USAGE_DIGITIZER_TIP_SWITCH ((USAGE) 0x42)
|
|
#define HID_USAGE_DIGITIZER_BARREL_SWITCH ((USAGE) 0x44)
|
|
|
|
#define HID_USAGE_GENERIC_POINTER ((USAGE) 0x01)
|
|
#define HID_USAGE_GENERIC_MOUSE ((USAGE) 0x02)
|
|
#define HID_USAGE_GENERIC_JOYSTICK ((USAGE) 0x04)
|
|
#define HID_USAGE_GENERIC_GAMEPAD ((USAGE) 0x05)
|
|
#define HID_USAGE_GENERIC_KEYBOARD ((USAGE) 0x06)
|
|
#define HID_USAGE_GENERIC_KEYPAD ((USAGE) 0x07)
|
|
#define HID_USAGE_GENERIC_MULTI_AXIS_CONTROLLER ((USAGE) 0x08)
|
|
#define HID_USAGE_GENERIC_SYSTEM_CTL ((USAGE) 0x80)
|
|
#define HID_USAGE_GENERIC_X ((USAGE) 0x30)
|
|
#define HID_USAGE_GENERIC_Y ((USAGE) 0x31)
|
|
#define HID_USAGE_GENERIC_Z ((USAGE) 0x32)
|
|
#define HID_USAGE_GENERIC_RX ((USAGE) 0x33)
|
|
#define HID_USAGE_GENERIC_RY ((USAGE) 0x34)
|
|
#define HID_USAGE_GENERIC_RZ ((USAGE) 0x35)
|
|
#define HID_USAGE_GENERIC_SLIDER ((USAGE) 0x36)
|
|
#define HID_USAGE_GENERIC_DIAL ((USAGE) 0x37)
|
|
#define HID_USAGE_GENERIC_WHEEL ((USAGE) 0x38)
|
|
#define HID_USAGE_GENERIC_HATSWITCH ((USAGE) 0x39)
|
|
#define HID_USAGE_GENERIC_COUNTED_BUFFER ((USAGE) 0x3A)
|
|
#define HID_USAGE_GENERIC_BYTE_COUNT ((USAGE) 0x3B)
|
|
#define HID_USAGE_GENERIC_MOTION_WAKEUP ((USAGE) 0x3C)
|
|
#define HID_USAGE_GENERIC_VX ((USAGE) 0x40)
|
|
#define HID_USAGE_GENERIC_VY ((USAGE) 0x41)
|
|
#define HID_USAGE_GENERIC_VZ ((USAGE) 0x42)
|
|
#define HID_USAGE_GENERIC_VBRX ((USAGE) 0x43)
|
|
#define HID_USAGE_GENERIC_VBRY ((USAGE) 0x44)
|
|
#define HID_USAGE_GENERIC_VBRZ ((USAGE) 0x45)
|
|
#define HID_USAGE_GENERIC_VNO ((USAGE) 0x46)
|
|
#define HID_USAGE_GENERIC_SYSCTL_POWER ((USAGE) 0x81)
|
|
#define HID_USAGE_GENERIC_SYSCTL_SLEEP ((USAGE) 0x82)
|
|
#define HID_USAGE_GENERIC_SYSCTL_WAKE ((USAGE) 0x83)
|
|
#define HID_USAGE_GENERIC_SYSCTL_CONTEXT_MENU ((USAGE) 0x84)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MAIN_MENU ((USAGE) 0x85)
|
|
#define HID_USAGE_GENERIC_SYSCTL_APP_MENU ((USAGE) 0x86)
|
|
#define HID_USAGE_GENERIC_SYSCTL_HELP_MENU ((USAGE) 0x87)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MENU_EXIT ((USAGE) 0x88)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MENU_SELECT ((USAGE) 0x89)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MENU_RIGHT ((USAGE) 0x8A)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MENU_LEFT ((USAGE) 0x8B)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MENU_UP ((USAGE) 0x8C)
|
|
#define HID_USAGE_GENERIC_SYSCTL_MENU_DOWN ((USAGE) 0x8D)
|
|
|
|
#define HID_USAGE_KEYBOARD_NOEVENT ((USAGE) 0x00)
|
|
#define HID_USAGE_KEYBOARD_ROLLOVER ((USAGE) 0x01)
|
|
#define HID_USAGE_KEYBOARD_POSTFAIL ((USAGE) 0x02)
|
|
#define HID_USAGE_KEYBOARD_UNDEFINED ((USAGE) 0x03)
|
|
#define HID_USAGE_KEYBOARD_aA ((USAGE) 0x04)
|
|
#define HID_USAGE_KEYBOARD_zZ ((USAGE) 0x1D)
|
|
#define HID_USAGE_KEYBOARD_ONE ((USAGE) 0x1E)
|
|
#define HID_USAGE_KEYBOARD_ZERO ((USAGE) 0x27)
|
|
#define HID_USAGE_KEYBOARD_LCTRL ((USAGE) 0xE0)
|
|
#define HID_USAGE_KEYBOARD_LSHFT ((USAGE) 0xE1)
|
|
#define HID_USAGE_KEYBOARD_LALT ((USAGE) 0xE2)
|
|
#define HID_USAGE_KEYBOARD_LGUI ((USAGE) 0xE3)
|
|
#define HID_USAGE_KEYBOARD_RCTRL ((USAGE) 0xE4)
|
|
#define HID_USAGE_KEYBOARD_RSHFT ((USAGE) 0xE5)
|
|
#define HID_USAGE_KEYBOARD_RALT ((USAGE) 0xE6)
|
|
#define HID_USAGE_KEYBOARD_RGUI ((USAGE) 0xE7)
|
|
#define HID_USAGE_KEYBOARD_SCROLL_LOCK ((USAGE) 0x47)
|
|
#define HID_USAGE_KEYBOARD_NUM_LOCK ((USAGE) 0x53)
|
|
#define HID_USAGE_KEYBOARD_CAPS_LOCK ((USAGE) 0x39)
|
|
#define HID_USAGE_KEYBOARD_F1 ((USAGE) 0x3A)
|
|
#define HID_USAGE_KEYBOARD_F12 ((USAGE) 0x45)
|
|
#define HID_USAGE_KEYBOARD_RETURN ((USAGE) 0x28)
|
|
#define HID_USAGE_KEYBOARD_ESCAPE ((USAGE) 0x29)
|
|
#define HID_USAGE_KEYBOARD_DELETE ((USAGE) 0x2A)
|
|
#define HID_USAGE_KEYBOARD_PRINT_SCREEN ((USAGE) 0x46)
|
|
|
|
#define HID_USAGE_LED_NUM_LOCK ((USAGE) 0x01)
|
|
#define HID_USAGE_LED_CAPS_LOCK ((USAGE) 0x02)
|
|
#define HID_USAGE_LED_SCROLL_LOCK ((USAGE) 0x03)
|
|
#define HID_USAGE_LED_COMPOSE ((USAGE) 0x04)
|
|
#define HID_USAGE_LED_KANA ((USAGE) 0x05)
|
|
#define HID_USAGE_LED_POWER ((USAGE) 0x06)
|
|
#define HID_USAGE_LED_SHIFT ((USAGE) 0x07)
|
|
#define HID_USAGE_LED_DO_NOT_DISTURB ((USAGE) 0x08)
|
|
#define HID_USAGE_LED_MUTE ((USAGE) 0x09)
|
|
#define HID_USAGE_LED_TONE_ENABLE ((USAGE) 0x0A)
|
|
#define HID_USAGE_LED_HIGH_CUT_FILTER ((USAGE) 0x0B)
|
|
#define HID_USAGE_LED_LOW_CUT_FILTER ((USAGE) 0x0C)
|
|
#define HID_USAGE_LED_EQUALIZER_ENABLE ((USAGE) 0x0D)
|
|
#define HID_USAGE_LED_SOUND_FIELD_ON ((USAGE) 0x0E)
|
|
#define HID_USAGE_LED_SURROUND_FIELD_ON ((USAGE) 0x0F)
|
|
#define HID_USAGE_LED_REPEAT ((USAGE) 0x10)
|
|
#define HID_USAGE_LED_STEREO ((USAGE) 0x11)
|
|
#define HID_USAGE_LED_SAMPLING_RATE_DETECT ((USAGE) 0x12)
|
|
#define HID_USAGE_LED_SPINNING ((USAGE) 0x13)
|
|
#define HID_USAGE_LED_CAV ((USAGE) 0x14)
|
|
#define HID_USAGE_LED_CLV ((USAGE) 0x15)
|
|
#define HID_USAGE_LED_RECORDING_FORMAT_DET ((USAGE) 0x16)
|
|
#define HID_USAGE_LED_OFF_HOOK ((USAGE) 0x17)
|
|
#define HID_USAGE_LED_RING ((USAGE) 0x18)
|
|
#define HID_USAGE_LED_MESSAGE_WAITING ((USAGE) 0x19)
|
|
#define HID_USAGE_LED_DATA_MODE ((USAGE) 0x1A)
|
|
#define HID_USAGE_LED_BATTERY_OPERATION ((USAGE) 0x1B)
|
|
#define HID_USAGE_LED_BATTERY_OK ((USAGE) 0x1C)
|
|
#define HID_USAGE_LED_BATTERY_LOW ((USAGE) 0x1D)
|
|
#define HID_USAGE_LED_SPEAKER ((USAGE) 0x1E)
|
|
#define HID_USAGE_LED_HEAD_SET ((USAGE) 0x1F)
|
|
#define HID_USAGE_LED_HOLD ((USAGE) 0x20)
|
|
#define HID_USAGE_LED_MICROPHONE ((USAGE) 0x21)
|
|
#define HID_USAGE_LED_COVERAGE ((USAGE) 0x22)
|
|
#define HID_USAGE_LED_NIGHT_MODE ((USAGE) 0x23)
|
|
#define HID_USAGE_LED_SEND_CALLS ((USAGE) 0x24)
|
|
#define HID_USAGE_LED_CALL_PICKUP ((USAGE) 0x25)
|
|
#define HID_USAGE_LED_CONFERENCE ((USAGE) 0x26)
|
|
#define HID_USAGE_LED_STAND_BY ((USAGE) 0x27)
|
|
#define HID_USAGE_LED_CAMERA_ON ((USAGE) 0x28)
|
|
#define HID_USAGE_LED_CAMERA_OFF ((USAGE) 0x29)
|
|
#define HID_USAGE_LED_ON_LINE ((USAGE) 0x2A)
|
|
#define HID_USAGE_LED_OFF_LINE ((USAGE) 0x2B)
|
|
#define HID_USAGE_LED_BUSY ((USAGE) 0x2C)
|
|
#define HID_USAGE_LED_READY ((USAGE) 0x2D)
|
|
#define HID_USAGE_LED_PAPER_OUT ((USAGE) 0x2E)
|
|
#define HID_USAGE_LED_PAPER_JAM ((USAGE) 0x2F)
|
|
#define HID_USAGE_LED_REMOTE ((USAGE) 0x30)
|
|
#define HID_USAGE_LED_FORWARD ((USAGE) 0x31)
|
|
#define HID_USAGE_LED_REVERSE ((USAGE) 0x32)
|
|
#define HID_USAGE_LED_STOP ((USAGE) 0x33)
|
|
#define HID_USAGE_LED_REWIND ((USAGE) 0x34)
|
|
#define HID_USAGE_LED_FAST_FORWARD ((USAGE) 0x35)
|
|
#define HID_USAGE_LED_PLAY ((USAGE) 0x36)
|
|
#define HID_USAGE_LED_PAUSE ((USAGE) 0x37)
|
|
#define HID_USAGE_LED_RECORD ((USAGE) 0x38)
|
|
#define HID_USAGE_LED_ERROR ((USAGE) 0x39)
|
|
#define HID_USAGE_LED_SELECTED_INDICATOR ((USAGE) 0x3A)
|
|
#define HID_USAGE_LED_IN_USE_INDICATOR ((USAGE) 0x3B)
|
|
#define HID_USAGE_LED_MULTI_MODE_INDICATOR ((USAGE) 0x3C)
|
|
#define HID_USAGE_LED_INDICATOR_ON ((USAGE) 0x3D)
|
|
#define HID_USAGE_LED_INDICATOR_FLASH ((USAGE) 0x3E)
|
|
#define HID_USAGE_LED_INDICATOR_SLOW_BLINK ((USAGE) 0x3F)
|
|
#define HID_USAGE_LED_INDICATOR_FAST_BLINK ((USAGE) 0x40)
|
|
#define HID_USAGE_LED_INDICATOR_OFF ((USAGE) 0x41)
|
|
#define HID_USAGE_LED_FLASH_ON_TIME ((USAGE) 0x42)
|
|
#define HID_USAGE_LED_SLOW_BLINK_ON_TIME ((USAGE) 0x43)
|
|
#define HID_USAGE_LED_SLOW_BLINK_OFF_TIME ((USAGE) 0x44)
|
|
#define HID_USAGE_LED_FAST_BLINK_ON_TIME ((USAGE) 0x45)
|
|
#define HID_USAGE_LED_FAST_BLINK_OFF_TIME ((USAGE) 0x46)
|
|
#define HID_USAGE_LED_INDICATOR_COLOR ((USAGE) 0x47)
|
|
#define HID_USAGE_LED_RED ((USAGE) 0x48)
|
|
#define HID_USAGE_LED_GREEN ((USAGE) 0x49)
|
|
#define HID_USAGE_LED_AMBER ((USAGE) 0x4A)
|
|
#define HID_USAGE_LED_GENERIC_INDICATOR ((USAGE) 0x3B)
|
|
|
|
#define HID_USAGE_PAGE_UNDEFINED ((USAGE) 0x00)
|
|
#define HID_USAGE_PAGE_GENERIC ((USAGE) 0x01)
|
|
#define HID_USAGE_PAGE_SIMULATION ((USAGE) 0x02)
|
|
#define HID_USAGE_PAGE_VR ((USAGE) 0x03)
|
|
#define HID_USAGE_PAGE_SPORT ((USAGE) 0x04)
|
|
#define HID_USAGE_PAGE_GAME ((USAGE) 0x05)
|
|
#define HID_USAGE_PAGE_KEYBOARD ((USAGE) 0x07)
|
|
#define HID_USAGE_PAGE_LED ((USAGE) 0x08)
|
|
#define HID_USAGE_PAGE_BUTTON ((USAGE) 0x09)
|
|
#define HID_USAGE_PAGE_ORDINAL ((USAGE) 0x0A)
|
|
#define HID_USAGE_PAGE_TELEPHONY ((USAGE) 0x0B)
|
|
#define HID_USAGE_PAGE_CONSUMER ((USAGE) 0x0C)
|
|
#define HID_USAGE_PAGE_DIGITIZER ((USAGE) 0x0D)
|
|
#define HID_USAGE_PAGE_HAPTICS ((USAGE) 0x0E)
|
|
#define HID_USAGE_PAGE_UNICODE ((USAGE) 0x10)
|
|
#define HID_USAGE_PAGE_ALPHANUMERIC ((USAGE) 0x14)
|
|
#define HID_USAGE_PAGE_VENDOR_DEFINED_BEGIN ((USAGE) 0xff00)
|
|
#define HID_USAGE_PAGE_VENDOR_DEFINED_END ((USAGE) 0xffff)
|
|
|
|
#define HID_USAGE_SIMULATION_RUDDER ((USAGE) 0xBA)
|
|
#define HID_USAGE_SIMULATION_THROTTLE ((USAGE) 0xBB)
|
|
#define HID_USAGE_SIMULATION_ACCELERATOR ((USAGE) 0xC4)
|
|
#define HID_USAGE_SIMULATION_BRAKE ((USAGE) 0xC5)
|
|
#define HID_USAGE_SIMULATION_STEERING ((USAGE) 0xC8)
|
|
|
|
#define HID_USAGE_TELEPHONY_PHONE ((USAGE) 0x01)
|
|
#define HID_USAGE_TELEPHONY_ANSWERING_MACHINE ((USAGE) 0x02)
|
|
#define HID_USAGE_TELEPHONY_MESSAGE_CONTROLS ((USAGE) 0x03)
|
|
#define HID_USAGE_TELEPHONY_HANDSET ((USAGE) 0x04)
|
|
#define HID_USAGE_TELEPHONY_HEADSET ((USAGE) 0x05)
|
|
#define HID_USAGE_TELEPHONY_KEYPAD ((USAGE) 0x06)
|
|
#define HID_USAGE_TELEPHONY_PROGRAMMABLE_BUTTON ((USAGE) 0x07)
|
|
#define HID_USAGE_TELEPHONY_REDIAL ((USAGE) 0x24)
|
|
#define HID_USAGE_TELEPHONY_TRANSFER ((USAGE) 0x25)
|
|
#define HID_USAGE_TELEPHONY_DROP ((USAGE) 0x26)
|
|
#define HID_USAGE_TELEPHONY_LINE ((USAGE) 0x2A)
|
|
#define HID_USAGE_TELEPHONY_RING_ENABLE ((USAGE) 0x2D)
|
|
#define HID_USAGE_TELEPHONY_SEND ((USAGE) 0x31)
|
|
#define HID_USAGE_TELEPHONY_KEYPAD_0 ((USAGE) 0xB0)
|
|
#define HID_USAGE_TELEPHONY_KEYPAD_D ((USAGE) 0xBF)
|
|
#define HID_USAGE_TELEPHONY_HOST_AVAILABLE ((USAGE) 0xF1)
|
|
|
|
#define HID_USAGE_HAPTICS_SIMPLE_CONTROLLER ((USAGE) 0x01)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_LIST ((USAGE) 0x10)
|
|
#define HID_USAGE_HAPTICS_DURATION_LIST ((USAGE) 0x11)
|
|
#define HID_USAGE_HAPTICS_AUTO_TRIGGER ((USAGE) 0x20)
|
|
#define HID_USAGE_HAPTICS_MANUAL_TRIGGER ((USAGE) 0x21)
|
|
#define HID_USAGE_HAPTICS_AUTO_ASSOCIATED_CONTROL ((USAGE) 0x22)
|
|
#define HID_USAGE_HAPTICS_INTENSITY ((USAGE) 0x23)
|
|
#define HID_USAGE_HAPTICS_REPEAT_COUNT ((USAGE) 0x24)
|
|
#define HID_USAGE_HAPTICS_RETRIGGER_PERIOD ((USAGE) 0x25)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_VENDOR_PAGE ((USAGE) 0x26)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_VENDOR_ID ((USAGE) 0x27)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_CUTOFF_TIME ((USAGE) 0x28)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_BEGIN ((USAGE) 0x1000)
|
|
/* Differs from https://usb.org/sites/default/files/hut1_22.pdf */
|
|
/* Waveform None */
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_STOP ((USAGE) 0x1001)
|
|
/* Waveform Stop */
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_NULL ((USAGE) 0x1002)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_CLICK ((USAGE) 0x1003)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_BUZZ ((USAGE) 0x1004)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_RUMBLE ((USAGE) 0x1005)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_PRESS ((USAGE) 0x1006)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_RELEASE ((USAGE) 0x1007)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_END ((USAGE) 0x1FFF)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_VENDOR_BEGIN ((USAGE) 0x2000)
|
|
#define HID_USAGE_HAPTICS_WAVEFORM_VENDOR_END ((USAGE) 0x2FFF)
|
|
|
|
#define HID_USAGE_MS_BTH_HF_DIALNUMBER ((USAGE) 0x21)
|
|
#define HID_USAGE_MS_BTH_HF_DIALMEMORY ((USAGE) 0x22)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __HIDUSAGE_H */
|