1# hid_ddk_types.h 2<!--Kit: Driver Development Kit--> 3<!--Subsystem: Driver--> 4<!--Owner: @lixinsheng2--> 5<!--Designer: @w00373942--> 6<!--Tester: @dong-dongzhen--> 7<!--Adviser: @w_Machine_cc--> 8 9## 概述 10 11提供HID DDK中的枚举变量与结构体定义。 12 13**引用文件:** <hid/hid_ddk_types.h> 14 15**库:** libhid.z.so 16 17**系统能力:** SystemCapability.Driver.HID.Extension 18 19**起始版本:** 11 20 21**相关模块:** [HidDdk](capi-hidddk.md) 22 23## 汇总 24 25### 结构体 26 27| 名称 | typedef关键字 | 描述 | 28|-----------------------------------------------------------| -- | -- | 29| [Hid_EmitItem](capi-hidddk-hid-emititem.md) | Hid_EmitItem | 事件信息。 | 30| [Hid_Device](capi-hidddk-hid-device.md) | Hid_Device | 设备基本信息。 | 31| [Hid_EventTypeArray](capi-hidddk-hid-eventtypearray.md) | Hid_EventTypeArray | 事件类型编码数组。 | 32| [Hid_KeyCodeArray](capi-hidddk-hid-keycodearray.md) | Hid_KeyCodeArray | 键值属性数组。 | 33| [Hid_AbsAxesArray](capi-hidddk-hid-absaxesarray.md) | Hid_AbsAxesArray | 绝对坐标属性数组。 | 34| [Hid_RelAxesArray](capi-hidddk-hid-relaxesarray.md) | Hid_RelAxesArray | 相对坐标属性数组。 | 35| [Hid_MscEventArray](capi-hidddk-hid-msceventarray.md) | Hid_MscEventArray | 其它特殊事件属性数组。 | 36| [Hid_EventProperties](capi-hidddk-hid-eventproperties.md) | Hid_EventProperties | 设备关注事件属性。 | 37| [Hid_RawDevInfo](capi-hidddk-hid-rawdevinfo.md) | Hid_RawDevInfo | 原始设备信息定义。 | 38| [Hid_DeviceHandle](capi-hidddk-hid-devicehandle.md) | Hid_DeviceHandle | 不透明的USB HID设备结构。 | 39 40### 枚举 41 42| 名称 | typedef关键字 | 描述 | 43| -- | -- | -- | 44| [Hid_DeviceProp](#hid_deviceprop) | Hid_DeviceProp | 输入设备特性定义。 | 45| [Hid_EventType](#hid_eventtype) | Hid_EventType | 事件类型。 | 46| [Hid_SynEvent](#hid_synevent) | Hid_SynEvent | 同步事件编码。 | 47| [Hid_KeyCode](#hid_keycode) | Hid_KeyCode | 键值编码。 | 48| [Hid_AbsAxes](#hid_absaxes) | Hid_AbsAxes | 绝对坐标编码。 | 49| [Hid_RelAxes](#hid_relaxes) | Hid_RelAxes | 相对坐标编码。 | 50| [Hid_MscEvent](#hid_mscevent) | Hid_MscEvent | 不适合其它类型的输入事件编码。 | 51| [Hid_DdkErrCode](#hid_ddkerrcode) | Hid_DdkErrCode | HID DDK错误码定义。 | 52| [Hid_ReportType](#hid_reporttype) | Hid_ReportType | 报告(HID设备与主机之间交换的数据包)类型定义。 | 53 54### 宏定义 55 56| 名称 | 描述 | 57| -- | -- | 58| HID_MAX_REPORT_BUFFER_SIZE (16 * 1024 - 1) | 最大报告缓冲区大小。 | 59 60## 枚举类型说明 61 62### Hid_DeviceProp 63 64``` 65enum Hid_DeviceProp 66``` 67 68**描述** 69 70输入设备特性定义。 71 72**起始版本:** 11 73 74| 枚举项 | 描述 | 75| -- | -- | 76| HID_PROP_POINTER = 0x00 | 指针设备 | 77| HID_PROP_DIRECT = 0x01 | 直接输入设备 | 78| HID_PROP_BUTTON_PAD = 0x02 | 底部按键触摸设备 | 79| HID_PROP_SEMI_MT = 0x03 | 全多点触控设备 | 80| HID_PROP_TOP_BUTTON_PAD = 0x04 | 顶部软按键触摸设备 | 81| HID_PROP_POINTING_STICK = 0x05 | 指点杆设备 | 82| HID_PROP_ACCELEROMETER = 0x06 | 加速度传感器设备 | 83 84### Hid_EventType 85 86``` 87enum Hid_EventType 88``` 89 90**描述** 91 92事件类型。 93 94**起始版本:** 11 95 96| 枚举项 | 描述 | 97| -- | -- | 98| HID_EV_SYN = 0x00 | 同步事件 | 99| HID_EV_KEY = 0x01 | 按键事件 | 100| HID_EV_REL = 0x02 | 相对坐标事件 | 101| HID_EV_ABS = 0x03 | 绝对坐标事件 | 102| HID_EV_MSC = 0x04 | 特殊事件 | 103 104### Hid_SynEvent 105 106``` 107enum Hid_SynEvent 108``` 109 110**描述** 111 112同步事件编码。 113 114**起始版本:** 11 115 116| 枚举项 | 描述 | 117| -- | -- | 118| HID_SYN_REPORT = 0 | 表示一个事件的结束 | 119| HID_SYN_CONFIG = 1 | 表示配置同步 | 120| HID_SYN_MT_REPORT = 2 | 表示多点触摸的ABS数据包结束 | 121| HID_SYN_DROPPED = 3 | 表示该事件被丢弃 | 122 123### Hid_KeyCode 124 125``` 126enum Hid_KeyCode 127``` 128 129**描述** 130 131键值编码。 132 133**起始版本:** 11 134 135| 枚举项 | 描述 | 136| -- | -- | 137| HID_KEY_A = 30 | 键A | 138| HID_KEY_B = 48 | 键B | 139| HID_KEY_C = 46 | 键C | 140| HID_KEY_D = 32 | 键D | 141| HID_KEY_E = 18 | 键E | 142| HID_KEY_F = 33 | 键F | 143| HID_KEY_G = 34 | 键G | 144| HID_KEY_H = 35 | 键H | 145| HID_KEY_I = 23 | 键I | 146| HID_KEY_J = 36 | 键J | 147| HID_KEY_K = 37 | 键K | 148| HID_KEY_L = 38 | 键L | 149| HID_KEY_M = 50 | 键M | 150| HID_KEY_N = 49 | 键N | 151| HID_KEY_O = 24 | 键O | 152| HID_KEY_P = 25 | 键P | 153| HID_KEY_Q = 16 | 键Q | 154| HID_KEY_R = 19 | 键R | 155| HID_KEY_S = 31 | 键S | 156| HID_KEY_T = 20 | 键T | 157| HID_KEY_U = 22 | 键U | 158| HID_KEY_V = 47 | 键V | 159| HID_KEY_W = 17 | 键W | 160| HID_KEY_X = 45 | 键X | 161| HID_KEY_Y = 21 | 键Y | 162| HID_KEY_Z = 44 | 键Z | 163| HID_KEY_ESC = 1 | 键ESC | 164| HID_KEY_0 = 11 | 键0 | 165| HID_KEY_1 = 2 | 键1 | 166| HID_KEY_2 = 3 | 键2 | 167| HID_KEY_3 = 4 | 键3 | 168| HID_KEY_4 = 5 | 键4 | 169| HID_KEY_5 = 6 | 键5 | 170| HID_KEY_6 = 7 | 键6 | 171| HID_KEY_7 = 8 | 键7 | 172| HID_KEY_8 = 9 | 键8 | 173| HID_KEY_9 = 10 | 键9 | 174| HID_KEY_GRAVE = 41 | 键` | 175| HID_KEY_MINUS = 12 | 键- | 176| HID_KEY_EQUALS = 13 | 键= | 177| HID_KEY_BACKSPACE = 14 | 键退格 | 178| HID_KEY_LEFT_BRACKET = 26 | 键[ | 179| HID_KEY_RIGHT_BRACKET = 27 | 键] | 180| HID_KEY_ENTER = 28 | 键回车 | 181| HID_KEY_LEFT_SHIFT = 42 | 键左shift | 182| HID_KEY_BACKSLASH = 43 | 键\ | 183| HID_KEY_SEMICOLON = 39 | 键; | 184| HID_KEY_APOSTROPHE = 40 | 键' | 185| HID_KEY_SPACE = 57 | 键空格 | 186| HID_KEY_SLASH = 53 | 键 | 187| HID_KEY_COMMA = 51 | 键, | 188| HID_KEY_PERIOD = 52 | 键. | 189| HID_KEY_RIGHT_SHIFT = 54 | 键右shift | 190| HID_KEY_NUMPAD_0 = 82 | 数字键0 | 191| HID_KEY_NUMPAD_1 = 79 | 数字键1 | 192| HID_KEY_NUMPAD_2 = 80 | 数字键2 | 193| HID_KEY_NUMPAD_3 = 81 | 数字键3 | 194| HID_KEY_NUMPAD_4 = 75 | 数字键4 | 195| HID_KEY_NUMPAD_5 = 76 | 数字键5 | 196| HID_KEY_NUMPAD_6 = 77 | 数字键6 | 197| HID_KEY_NUMPAD_7 = 71 | 数字键7 | 198| HID_KEY_NUMPAD_8 = 72 | 数字键8 | 199| HID_KEY_NUMPAD_9 = 73 | 数字键9 | 200| HID_KEY_NUMPAD_DIVIDE = 70 | 数字键 | 201| HID_KEY_NUMPAD_MULTIPLY = 55 | 数字键 | 202| HID_KEY_NUMPAD_SUBTRACT = 74 | 数字键- | 203| HID_KEY_NUMPAD_ADD = 78 | 数字键+ | 204| HID_KEY_NUMPAD_DOT = 83 | 数字键. | 205| HID_KEY_SYSRQ = 99 | 键打印屏幕 | 206| HID_KEY_DELETE = 111 | 键删除 | 207| HID_KEY_MUTE = 113 | 键静音 | 208| HID_KEY_VOLUME_DOWN = 114 | 键音量- | 209| HID_KEY_VOLUME_UP = 115 | 键音量+ | 210| HID_KEY_BRIGHTNESS_DOWN = 224 | 键亮度- | 211| HID_KEY_BRIGHTNESS_UP = 225 | 键亮度+ | 212| HID_BTN_0 = 0x100 | 按钮0 | 213| HID_BTN_1 = 0x101 | 按钮1 | 214| HID_BTN_2 = 0x102 | 按钮2 | 215| HID_BTN_3 = 0x103 | 按钮3 | 216| HID_BTN_4 = 0x104 | 按钮4 | 217| HID_BTN_5 = 0x105 | 按钮5 | 218| HID_BTN_6 = 0x106 | 按钮6 | 219| HID_BTN_7 = 0x107 | 按钮7 | 220| HID_BTN_8 = 0x108 | 按钮8 | 221| HID_BTN_9 = 0x109 | 按钮9 | 222| HID_BTN_LEFT = 0x110 | 鼠标按键左键 | 223| HID_BTN_RIGHT = 0x111 | 鼠标按键右键 | 224| HID_BTN_MIDDLE = 0x112 | 鼠标按键中键 | 225| HID_BTN_SIDE = 0x113 | 鼠标侧面按键 | 226| HID_BTN_EXTRA = 0x114 | 鼠标附加按键 | 227| HID_BTN_FORWARD = 0x115 | 鼠标向前按键 | 228| HID_BTN_BACKWARD = 0x116 | 鼠标向后按键 | 229| HID_BTN_TASK = 0x117 | 鼠标任务按键 | 230| HID_BTN_TOOL_PEN = 0x140 | 画笔 | 231| HID_BTN_TOOL_RUBBER = 0x141 | 橡皮擦 | 232| HID_BTN_TOOL_BRUSH = 0x142 | 笔刷 | 233| HID_BTN_TOOL_PENCIL = 0x143 | 钢笔 | 234| HID_BTN_TOOL_AIRBRUSH = 0x144 | 喷枪 | 235| HID_BTN_TOOL_FINGER = 0x145 | 手指 | 236| HID_BTN_TOOL_MOUSE = 0x146 | 鼠标 | 237| HID_BTN_TOOL_LENS = 0x147 | 镜头 | 238| HID_BTN_TOOL_QUINT_TAP = 0x148 | 五指触控 | 239| HID_BTN_STYLUS3 = 0x149 | 手写笔3 | 240| HID_BTN_TOUCH = 0x14a | 触摸 | 241| HID_BTN_STYLUS = 0x14b | 手写笔 | 242| HID_BTN_STYLUS2 = 0x14c | 手写笔2 | 243| HID_BTN_TOOL_DOUBLE_TAP = 0x14d | 二指触控 | 244| HID_BTN_TOOL_TRIPLE_TAP = 0x14e | 三指触控 | 245| HID_BTN_TOOL_QUAD_TAP = 0x14f | 四指触控 | 246| HID_BTN_WHEEL = 0x150 | 滚轮 | 247 248### Hid_AbsAxes 249 250``` 251enum Hid_AbsAxes 252``` 253 254**描述** 255 256绝对坐标编码。 257 258**起始版本:** 11 259 260| 枚举项 | 描述 | 261| -- | -- | 262| HID_ABS_X = 0x00 | X轴 | 263| HID_ABS_Y = 0x01 | Y轴 | 264| HID_ABS_Z = 0x02 | Z轴 | 265| HID_ABS_RX = 0x03 | 右模拟摇杆的 X 轴 | 266| HID_ABS_RY = 0x04 | 右模拟摇杆的 Y 轴 | 267| HID_ABS_RZ = 0x05 | 右模拟摇杆的 Z 轴 | 268| HID_ABS_THROTTLE = 0x06 | 油门 | 269| HID_ABS_RUDDER = 0x07 | 舵 | 270| HID_ABS_WHEEL = 0x08 | 滚轮 | 271| HID_ABS_GAS = 0x09 | 气 | 272| HID_ABS_BRAKE = 0x0a | 制动 | 273| HID_ABS_HAT0X = 0x10 | HAT0X | 274| HID_ABS_HAT0Y = 0x11 | HAT0Y | 275| HID_ABS_HAT1X = 0x12 | HAT1X | 276| HID_ABS_HAT1Y = 0x13 | HAT1Y | 277| HID_ABS_HAT2X = 0x14 | HAT2X | 278| HID_ABS_HAT2Y = 0x15 | HAT2Y | 279| HID_ABS_HAT3X = 0x16 | HAT3X | 280| HID_ABS_HAT3Y = 0x17 | HAT3Y | 281| HID_ABS_PRESSURE = 0x18 | 压力 | 282| HID_ABS_DISTANCE = 0x19 | 距离 | 283| HID_ABS_TILT_X = 0x1a | X轴倾斜度 | 284| HID_ABS_TILT_Y = 0x1b | Y轴倾斜度 | 285| HID_ABS_TOOL_WIDTH = 0x1c | 触摸工具的宽度 | 286| HID_ABS_VOLUME = 0x20 | 音量 | 287| HID_ABS_MISC = 0x28 | 其它 | 288 289### Hid_RelAxes 290 291``` 292enum Hid_RelAxes 293``` 294 295**描述** 296 297相对坐标编码。 298 299**起始版本:** 11 300 301| 枚举项 | 描述 | 302| -- | -- | 303| HID_REL_X = 0x00 | X轴 | 304| HID_REL_Y = 0x01 | Y轴 | 305| HID_REL_Z = 0x02 | Z轴 | 306| HID_REL_RX = 0x03 | 右模拟摇杆的 X 轴 | 307| HID_REL_RY = 0x04 | 右模拟摇杆的 Y 轴 | 308| HID_REL_RZ = 0x05 | 右模拟摇杆的 Z 轴 | 309| HID_REL_HWHEEL = 0x06 | 水平滚轮 | 310| HID_REL_DIAL = 0x07 | 刻度 | 311| HID_REL_WHEEL = 0x08 | 滚轮 | 312| HID_REL_MISC = 0x09 | 其它 | 313| HID_REL_RESERVED = 0x0a | 预留 | 314| HID_REL_WHEEL_HI_RES = 0x0b | 高分辨率滚轮 | 315| HID_REL_HWHEEL_HI_RES = 0x0c | 高分辨率水平滚轮 | 316 317### Hid_MscEvent 318 319``` 320enum Hid_MscEvent 321``` 322 323**描述** 324 325不适合其它类型的输入事件编码。 326 327**起始版本:** 11 328 329| 枚举项 | 描述 | 330| -- | -- | 331| HID_MSC_SERIAL = 0x00 | 序列号 | 332| HID_MSC_PULSE_LED = 0x01 | 脉冲 | 333| HID_MSC_GESTURE = 0x02 | 手势 | 334| HID_MSC_RAW = 0x03 | 开始事件 | 335| HID_MSC_SCAN = 0x04 | 扫描 | 336| HID_MSC_TIMESTAMP = 0x05 | 时间戳 | 337 338### Hid_DdkErrCode 339 340``` 341enum Hid_DdkErrCode 342``` 343 344**描述** 345 346HID DDK错误码定义。 347 348**起始版本:** 11 349 350| 枚举项 | 描述 | 351| -- | -- | 352| HID_DDK_SUCCESS = 0 | 操作成功 | 353| HID_DDK_NO_PERM = 201 | 没有权限,从API 16起,取值由-6变更为201 | 354| HID_DDK_INVALID_PARAMETER = 401 | 非法参数,从API 16起,取值由-2变更为401 | 355| HID_DDK_FAILURE = 27300001 | 操作失败,从API 16起,取值由-1变更为27300001 | 356| HID_DDK_NULL_PTR = 27300002 | 空指针异常,从API 16起,取值由-4变更为27300002 | 357| HID_DDK_INVALID_OPERATION = 27300003 | 非法操作,从API 16起,取值由-3变更为27300003 | 358| HID_DDK_TIMEOUT = 27300004 | 超时,从API 16起,取值由-5变更为27300004 | 359| HID_DDK_INIT_ERROR = 27300005 | 初始化DDK失败或DDK未初始化。,从API 16开始支持此枚举 | 360| HID_DDK_SERVICE_ERROR = 27300006 | 服务通信过程中错误,从API 16开始支持此枚举 | 361| HID_DDK_MEMORY_ERROR = 27300007 | 内存相关的错误,包括:内存数据拷贝失败、内存申请失败等,从API 16开始支持此枚举 | 362| HID_DDK_IO_ERROR = 27300008 | I/O操作失败,从API 16开始支持此枚举 | 363| HID_DDK_DEVICE_NOT_FOUND = 27300009 | 设备未找到,从API 16开始支持此枚举 | 364 365### Hid_ReportType 366 367``` 368enum Hid_ReportType 369``` 370 371**描述** 372 373报告(HID设备与主机之间交换的数据包)类型定义。 374 375**起始版本:** 18 376 377| 枚举项 | 描述 | 378| -- | -- | 379| HID_INPUT_REPORT = 0 | 输入报告 | 380| HID_OUTPUT_REPORT = 1 | 输出报告 | 381| HID_FEATURE_REPORT = 2 | 特性报告 | 382 383 384### HID_MAX_REPORT_BUFFER_SIZE 385 386``` 387HID_MAX_REPORT_BUFFER_SIZE (16 * 1024 - 1) 388``` 389 390**描述** 391 392最大报告缓冲区大小。 393 394**起始版本:** 18 395