1# InputController 2 3 4## **概述** 5 6提供Input设备业务控制相关的接口。 7 8此类接口包含电源状态的设置、特性的使能、器件信息的获取,以及产线相关的测试功能接口。 9 10**相关模块:** 11 12[Input](input.md) 13 14 15## **汇总** 16 17 18### Public 属性 19 20 | 名称 | 描述 | 21| -------- | -------- | 22| ([SetPowerStatus](#setpowerstatus) )(uint32_t devIndex, uint32_t status) | 设置电源状态。 | 23| ([GetPowerStatus](#getpowerstatus) )(uint32_t devIndex, uint32_t \*status) | 获取电源状态。 | 24| ([GetDeviceType](#getdevicetype) )(uint32_t devIndex, uint32_t \*deviceType) | 获取devIndex对应的Input设备的类型。 | 25| ([GetChipInfo](#getchipinfo) )(uint32_t devIndex, char \*chipInfo, uint32_t length) | 获取器件对应的编码信息。 | 26| ([GetVendorName](#getvendorname) )(uint32_t devIndex, char \*vendorName, uint32_t length) | 获取devIndex对应的模组厂商名。 | 27| ([GetChipName](#getchipname) )(uint32_t devIndex, char \*chipName, uint32_t length) | 获取devIndex对应的驱动芯片名。 | 28| ([SetGestureMode](#setgesturemode) )(uint32_t devIndex, uint32_t gestureMode) | 设置手势模式。 | 29| ([RunCapacitanceTest](#runcapacitancetest) )(uint32_t devIndex, uint32_t testType, char \*result, uint32_t length) | 执行容值自检测试。 | 30| ([RunExtraCommand](#runextracommand) )(uint32_t devIndex, [InputExtraCmd](_input_extra_cmd.md) \*cmd) | 执行拓展指令。 | 31 32 33## **类成员变量说明** 34 35 36### GetChipInfo 37 38 39``` 40int32_t(* InputController::GetChipInfo) (uint32_t devIndex, char *chipInfo, uint32_t length) 41``` 42 43**描述:** 44 45获取器件对应的编码信息。 46 47一款产品通常会有多家模组和Driver IC,上层应用如果关注具体器件型号,则通过此接口来获取。 48 49**参数:** 50 51 | 名称 | 描述 | 52| -------- | -------- | 53| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 54| chipInfo | 输出参数,获取的对应设备索引的器件编码信息。 | 55| length | 输入参数,保存器件芯片信息的内存长度。 | 56 57**返回:** 58 59INPUT_SUCCESS 表示执行成功。 60 61其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 62 63 64### GetChipName 65 66 67``` 68int32_t(* InputController::GetChipName) (uint32_t devIndex, char *chipName, uint32_t length) 69``` 70 71**描述:** 72 73获取devIndex对应的驱动芯片名。 74 75**参数:** 76 77 | 名称 | 描述 | 78| -------- | -------- | 79| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 80| chipName | 输出参数,获取的对应设备索引的驱动芯片名。 | 81| length | 输入参数,保存驱动芯片名的内存长度。 | 82 83**返回:** 84 85INPUT_SUCCESS 表示执行成功。 86 87其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 88 89 90### GetDeviceType 91 92 93``` 94int32_t(* InputController::GetDeviceType) (uint32_t devIndex, uint32_t *deviceType) 95``` 96 97**描述:** 98 99获取devIndex对应的Input设备的类型。 100 101**参数:** 102 103 | 名称 | 描述 | 104| -------- | -------- | 105| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 106| deviceType | 输出参数,获取的对应设备索引的设备类型,具体参考[InputDevType](input.md#inputdevtype)。 | 107 108**返回:** 109 110INPUT_SUCCESS 表示执行成功。 111 112其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 113 114 115### GetPowerStatus 116 117 118``` 119int32_t(* InputController::GetPowerStatus) (uint32_t devIndex, uint32_t *status) 120``` 121 122**描述:** 123 124获取电源状态。 125 126在系统休眠或者唤醒时,Input服务或电源管理模块获取电源状态,以便驱动IC能正常进入对应的休眠模式。 127 128**参数:** 129 130 | 名称 | 描述 | 131| -------- | -------- | 132| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 133| status | 输出参数,获取的对应设备索引的电源状态,具体参考[PowerStatus](input.md#powerstatus)。 | 134 135**返回:** 136 137INPUT_SUCCESS 表示执行成功。 138 139其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 140 141 142### GetVendorName 143 144 145``` 146int32_t(* InputController::GetVendorName) (uint32_t devIndex, char *vendorName, uint32_t length) 147``` 148 149**描述:** 150 151获取devIndex对应的模组厂商名。 152 153**参数:** 154 155 | 名称 | 描述 | 156| -------- | -------- | 157| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 158| vendorName | 输出参数,获取的对应设备索引的模组厂商名。 | 159| length | 输入参数,保存模组厂商名的内存长度。 | 160 161**返回:** 162 163INPUT_SUCCESS 表示执行成功。 164 165其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 166 167 168### RunCapacitanceTest 169 170 171``` 172int32_t(* InputController::RunCapacitanceTest) (uint32_t devIndex, uint32_t testType, char *result, uint32_t length) 173``` 174 175**描述:** 176 177执行容值自检测试。 178 179启动不同检测场景下的容值自检测试,并获取测试结果,容值自检项由器件厂商自定义, 一般包括RawData测试、 \* 短路检测、开路检测、干扰检测、行列差检测等测试项。 180 181**参数:** 182 183 | 名称 | 描述 | 184| -------- | -------- | 185| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 186| testType | 输入参数,容值测试的测试类型,具体参考[CapacitanceTest](input.md#capacitancetest)。 | 187| result | 输出参数,容值测试的结果,成功则输出“SUCC”,失败则返回对应的错误提示。 | 188| length | 输入参数,保存容值测试结果的内存长度。 | 189 190**返回:** 191 192INPUT_SUCCESS 表示执行成功。 193 194其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 195 196 197### RunExtraCommand 198 199 200``` 201int32_t(* InputController::RunExtraCommand) (uint32_t devIndex, InputExtraCmd *cmd) 202``` 203 204**描述:** 205 206执行拓展指令。 207 208**参数:** 209 210 | 名称 | 描述 | 211| -------- | -------- | 212| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 213| cmd | 输入参数,拓展指令数据包,包括指令编码及参数,具体参考[InputExtraCmd](_input_extra_cmd.md)。 | 214 215**返回:** 216 217INPUT_SUCCESS 表示执行成功。 218 219其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 220 221 222### SetGestureMode 223 224 225``` 226int32_t(* InputController::SetGestureMode) (uint32_t devIndex, uint32_t gestureMode) 227``` 228 229**描述:** 230 231设置手势模式。 232 233上层应用开关手势模式,即设置手势模式的对应使能bit。 234 235**参数:** 236 237 | 名称 | 描述 | 238| -------- | -------- | 239| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 240| gestureMode | 输入参数,手势模式的开关状态。 | 241 242**返回:** 243 244INPUT_SUCCESS 表示执行成功。 245 246其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 247 248 249### SetPowerStatus 250 251 252``` 253int32_t(* InputController::SetPowerStatus) (uint32_t devIndex, uint32_t status) 254``` 255 256**描述:** 257 258设置电源状态。 259 260在系统休眠或者唤醒时,Input服务或电源管理模块设置电源状态,以使驱动IC能正常进入对应的休眠模式。 261 262**参数:** 263 264 | 名称 | 描述 | 265| -------- | -------- | 266| devIndex | 输入参数,Input设备索引,用于标志多个Input设备,取值从0开始,最多支持32个设备。 | 267| status | 输入参数,设置的电源状态,Input服务控制Input设备进入resume或者suspend等状态[PowerStatus](input.md#powerstatus)。 | 268 269**返回:** 270 271INPUT_SUCCESS 表示执行成功。 272 273其他值表示执行失败,具体错误码查看[RetStatus](input.md#retstatus)。 274