openharmony 鸿蒙 _input

2025-06-16 浏览 (1)

Input

概述

Input模块驱动接口声明。

本模块为Input服务提供相关驱动接口,包括Input设备的打开和关闭、Input事件获取、设备信息查询、回调函数注册、特性状态控制等接口。

起始版本: 1.0

汇总

文件

名称描述
input_controller.h描述Input设备业务控制相关的接口声明。
input_manager.h描述Input设备管理相关的接口声明。
input_reporter.h描述Input设备数据上报相关的接口声明。
input_type.hInput设备相关的类型定义,定义了Input设备驱动接口所使用的结构体及枚举类型。

名称描述
struct  InputController提供Input设备业务控制相关的接口。
struct  InputManager提供Input设备管理相关的接口。
struct  IInputInterface定义用于提供Input设备驱动程序功能的接口。
struct  InputReporter提供Input设备数据上报相关的接口。
struct  InputEventPackageInput事件数据包结构。
struct  InputHotPlugEvent热插拔事件数据包结构。
struct  InputDevDescInput设备描述信息。
struct  InputEventCb此结构体定义了输入事件回调函数并提供给Input服务使用。
struct  InputHostCb此结构体定义了热插拔事件上报回调函数并提供给Input服务使用。
struct  InputDevAbilityInput设备的能力属性,存储支持事件的位图。
struct  InputDimensionInfoInput设备的维度信息。
struct  InputDevIdentifyInput设备的识别信息。
struct  InputDevAttrInput设备属性。
struct  InputDeviceInfoInput设备基础设备信息。
struct  InputExtraCmd扩展指令的数据结构。

宏定义

名称描述
MAX_INPUT_DEV_NUM   32Input设备数量的最大值。
CHIP_INFO_LEN   10芯片信息长度。
CHIP_NAME_LEN   10芯片名称长度。
VENDOR_NAME_LEN   10厂商名称长度。
DEV_NAME_LEN   64Input设备名称长度。
SELF_TEST_RESULT_LEN   20自测结果长度。
DEV_MANAGER_SERVICE_NAME   "hdf_input_host"Input设备节点服务名称。
DIV_ROUND_UP(nr, d)   (((nr) + (d) - 1) / (d))向上取整计算公式。
BYTE_HAS_BITS   8一个字节所包含的比特数。
BITS_TO_UINT64(count)   DIV_ROUND_UP(count, BYTE_HAS_BITS * sizeof(uint64_t))比特与64位无符号整数的转换公式。
HDF_FF_CNT   (0x7f + 1)Input设备发送力反馈命令的数量最大值。

枚举

名称描述
RetStatus { INPUT_SUCCESS = 0, INPUT_FAILURE = -1, INPUT_INVALID_PARAM = -2, INPUT_NOMEM = -3,   INPUT_NULL_PTR = -4, INPUT_TIMEOUT = -5, INPUT_UNSUPPORTED = -6 }定义返回值类型。
InputDevType { INDEV_TYPE_TOUCH, INDEV_TYPE_KEY, INDEV_TYPE_KEYBOARD, INDEV_TYPE_MOUSE,   INDEV_TYPE_BUTTON, INDEV_TYPE_CROWN, INDEV_TYPE_ENCODER, INDEV_TYPE_UNKNOWN }定义Input设备类型。
PowerStatus { INPUT_RESUME, INPUT_SUSPEND, INPUT_LOW_POWER, INPUT_POWER_STATUS_UNKNOWN }定义电源状态。
CapacitanceTest { BASE_TEST, FULL_TEST, MMI_TEST, RUNNING_TEST,   TEST_TYPE_UNKNOWN }定义容值测试类型。

函数

名称描述
int32_t GetInputInterface (IInputInterface **interface)Input服务通过调用此接口获取操作Input设备的所有接口。

宏定义说明

BITS_TO_UINT64

#define BITS_TO_UINT64( count)   DIV_ROUND_UP(count, BYTE_HAS_BITS * sizeof(uint64_t))

描述

比特与64位无符号整数的转换公式。

BYTE_HAS_BITS

#define BYTE_HAS_BITS   8

描述

一个字节所包含的比特数。

CHIP_INFO_LEN

#define CHIP_INFO_LEN   10

描述

芯片信息长度。

CHIP_NAME_LEN

#define CHIP_NAME_LEN   10

描述

芯片名称长度。

DEV_MANAGER_SERVICE_NAME

#define DEV_MANAGER_SERVICE_NAME   "hdf_input_host"

描述

Input设备节点服务名称。

DEV_NAME_LEN

#define DEV_NAME_LEN   64

描述

Input设备名称长度。

DIV_ROUND_UP

#define DIV_ROUND_UP( nr,  d )   (((nr) + (d) - 1) / (d))

描述

向上取整计算公式。

HDF_FF_CNT

#define HDF_FF_CNT   (0x7f + 1)

描述

Input设备发送力反馈命令的数量最大值。

MAX_INPUT_DEV_NUM

#define MAX_INPUT_DEV_NUM   32

描述

Input设备数量的最大值。

SELF_TEST_RESULT_LEN

#define SELF_TEST_RESULT_LEN   20

描述

自测试结果长度。

VENDOR_NAME_LEN

#define VENDOR_NAME_LEN   10

描述

厂商名称长度。

枚举类型说明

CapacitanceTest

enum CapacitanceTest

描述

定义容值测试类型。

起始版本: 1.0

枚举值描述
BASE_TEST基础容值测试
FULL_TEST全量容值自检测试
MMI_TESTMMI容值测试
RUNNING_TEST老化容值测试
TEST_TYPE_UNKNOWN未知的测试类型

InputDevType

enum InputDevType

描述

定义Input设备类型。

起始版本: 1.0

枚举值描述
INDEV_TYPE_TOUCH触摸屏
INDEV_TYPE_KEY物理按键
INDEV_TYPE_KEYBOARD键盘
INDEV_TYPE_MOUSE鼠标
INDEV_TYPE_BUTTON虚拟按键
INDEV_TYPE_CROWN表冠
INDEV_TYPE_ENCODER自定义编码的特定功能或者事件
INDEV_TYPE_UNKNOWN未知输入设备类型

PowerStatus

enum PowerStatus

描述

定义电源状态。

起始版本: 1.0

枚举值描述
INPUT_RESUME正常唤醒
INPUT_SUSPEND休眠下电模式
INPUT_LOW_POWER休眠低功耗模式
INPUT_POWER_STATUS_UNKNOWN未知电源状态

RetStatus

enum RetStatus

描述

定义返回值类型。

起始版本: 1.0

枚举值描述
INPUT_SUCCESS成功
INPUT_FAILURE失败
INPUT_INVALID_PARAM无效参数
INPUT_NOMEM内存不足
INPUT_NULL_PTR空指针
INPUT_TIMEOUT执行超时
INPUT_UNSUPPORTED特性不支持

函数说明

GetInputInterface()

int32_t GetInputInterface (IInputInterface ** interface)

描述

Input服务通过调用此接口获取操作Input设备的所有接口。

起始版本: 1.0

参数:

名称描述
interface对Input设备进行接口操作的指针,通常在Input服务启动后,通过调用此函数获取Input设备操作接口。

返回:

INPUT_SUCCESS 表示执行成功。

其他值表示执行失败,具体错误码查看RetStatus

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Input HDI 参考

harmony 鸿蒙DevAbility

harmony 鸿蒙DevAttr

harmony 鸿蒙DevDesc

harmony 鸿蒙DevIdentify

harmony 鸿蒙DeviceInfo

harmony 鸿蒙DimensionInfo

harmony 鸿蒙EventPackage

harmony 鸿蒙ExtraCmd

harmony 鸿蒙HdiInput

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/5G8q1L