# Sensor ## 概述 传感器设备驱动对传感器服务提供通用的接口能力。 模块提供传感器服务对传感器驱动访问统一接口,服务获取驱动对象或者代理后,通过其提供的各类方法, 以传感器ID区分访问不同类型传感器设备,实现获取传感器设备信息、订阅/取消订阅传感器数据、 使能/去使能传感器、设置传感器模式、设置传感器精度、量程等可选配置等。 **Since:** 2.2 **Version:** 1.0 **Since:** ## 汇总 ### 文件 | 名称 | 描述 | | -------- | -------- | | [ISensorCallback.idl](_i_sensor_callback_8idl.md) | Sensor模块为Sensor服务提供数据上报的回调函数。 | | [ISensorInterface.idl](_i_sensor_interface_8idl.md) | Sensor模块对外通用的接口声明文件,提供获取传感器设备信息、订阅/取消订阅传感器数据、 使能/去使能传感器、设置传感器模式、设置传感器精度,量程等可选配置接口定义。 | | [SensorTypes.idl](_sensor_types_8idl.md) | 定义传感器模块所使用的传感器类型,传感器信息,传感器数据结构等数据类型。 | ### 类 | 名称 | 描述 | | -------- | -------- | | [ISensorCallback](interface_i_sensor_callback.md) | interface
定义用于上报传感器数据的回调函数。 | | [ISensorInterface](interface_i_sensor_interface.md) | interface
提供Sensor设备基本控制操作接口。 | | [HdfSensorInformation](_hdf_sensor_information.md) | struct
定义传感器的基本信息。 | | [HdfSensorEvents](_hdf_sensor_events.md) | struct
定义传感器上报的数据。 | ### 枚举 | 名称 | 描述 | | -------- | -------- | | [HdfSensorTypeTag](#hdfsensortypetag) { HDF_SENSOR_TYPE_NONE = 0, HDF_SENSOR_TYPE_ACCELEROMETER = 1, HDF_SENSOR_TYPE_GYROSCOPE = 2, HDF_SENSOR_TYPE_PHOTOPLETHYSMOGRAPH = 3,   HDF_SENSOR_TYPE_ELECTROCARDIOGRAPH = 4, HDF_SENSOR_TYPE_AMBIENT_LIGHT = 5, HDF_SENSOR_TYPE_MAGNETIC_FIELD = 6, HDF_SENSOR_TYPE_CAPACITIVE = 7,   HDF_SENSOR_TYPE_BAROMETER = 8, HDF_SENSOR_TYPE_TEMPERATURE = 9, HDF_SENSOR_TYPE_HALL = 10, HDF_SENSOR_TYPE_GESTURE = 11,   HDF_SENSOR_TYPE_PROXIMITY = 12, HDF_SENSOR_TYPE_HUMIDITY = 13, HDF_SENSOR_TYPE_MEDICAL_BEGIN = 128, HDF_SENSOR_TYPE_MEDICAL_END = 160,   HDF_SENSOR_TYPE_PHYSICAL_MAX = 255, HDF_SENSOR_TYPE_ORIENTATION = 256, HDF_SENSOR_TYPE_GRAVITY = 257, HDF_SENSOR_TYPE_LINEAR_ACCELERATION = 258,   HDF_SENSOR_TYPE_ROTATION_VECTOR = 259, HDF_SENSOR_TYPE_AMBIENT_TEMPERATURE = 260, HDF_SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED = 261, HDF_SENSOR_TYPE_GAME_ROTATION_VECTOR = 262,   HDF_SENSOR_TYPE_GYROSCOPE_UNCALIBRATED = 263, HDF_SENSOR_TYPE_SIGNIFICANT_MOTION = 264, HDF_SENSOR_TYPE_PEDOMETER_DETECTION = 265, HDF_SENSOR_TYPE_PEDOMETER = 266,   HDF_SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR = 277, HDF_SENSOR_TYPE_HEART_RATE = 278, HDF_SENSOR_TYPE_DEVICE_ORIENTATION = 279, HDF_SENSOR_TYPE_WEAR_DETECTION = 280,   HDF_SENSOR_TYPE_ACCELEROMETER_UNCALIBRATED = 281, HDF_SENSOR_TYPE_MAX } | 定义传感器类型标识。 | | [HdfSensorGroupType](#hdfsensorgrouptype) { HDF_TRADITIONAL_SENSOR_TYPE = 0, HDF_MEDICAL_SENSOR_TYPE = 1, HDF_SENSOR_GROUP_TYPE_MAX } | 枚举传感器的硬件服务组。 | | [HdfSensorModeType](#hdfsensormodetype) { SENSOR_MODE_DEFAULT = 0, SENSOR_MODE_REALTIME = 1, SENSOR_MODE_ON_CHANGE = 2, SENSOR_MODE_ONE_SHOT = 3,   SENSOR_MODE_FIFO_MODE = 4, SENSOR_MODE_MAX } | 传感器的工作模式。 | ### 关键字 | 名称 | 描述 | | -------- | -------- | | package ohos.hdi.sensor.v1_0 | Sensor模块接口的包路径。 | ## 枚举类型说明 ### HdfSensorGroupType ``` enum HdfSensorGroupType ``` **描述:** 枚举传感器的硬件服务组。 | 枚举值 | 描述 | | -------- | -------- | | HDF_TRADITIONAL_SENSOR_TYPE | 传统传感器类型,传感器ID枚举值范围不在128-160之间。 | | HDF_MEDICAL_SENSOR_TYPE | 医疗传感器类型,传感器ID枚举值范围在128-160之间。 | | HDF_SENSOR_GROUP_TYPE_MAX | 最大传感器类型。 | ### HdfSensorModeType ``` enum HdfSensorModeType ``` **描述:** 传感器的工作模式。 | 枚举值 | 描述 | | -------- | -------- | | SENSOR_MODE_DEFAULT | 传感器数据默认上报模式。 | | SENSOR_MODE_REALTIME | 传感器数据持续上报模式。 | | SENSOR_MODE_ON_CHANGE | 传感器数据变更时上报模式。 | | SENSOR_MODE_ONE_SHOT | 传感器一次数据上报模式。 | | SENSOR_MODE_FIFO_MODE | 传感器数据缓存模式。 | | SENSOR_MODE_MAX | 传感器最大类型标识。 | ### HdfSensorTypeTag ``` enum HdfSensorTypeTag ``` **描述:** 定义传感器类型标识。 | 枚举值 | 描述 | | -------- | -------- | | HDF_SENSOR_TYPE_NONE | 空传感器类型,用于测试。 | | HDF_SENSOR_TYPE_ACCELEROMETER | 加速度传感器。 | | HDF_SENSOR_TYPE_GYROSCOPE | 陀螺仪传感器。 | | HDF_SENSOR_TYPE_PHOTOPLETHYSMOGRAPH | 心率传感器。 | | HDF_SENSOR_TYPE_ELECTROCARDIOGRAPH | 心电传感器。 | | HDF_SENSOR_TYPE_AMBIENT_LIGHT | 环境光传感器。 | | HDF_SENSOR_TYPE_MAGNETIC_FIELD | 地磁传感器。 | | HDF_SENSOR_TYPE_CAPACITIVE | 电容传感器。 | | HDF_SENSOR_TYPE_BAROMETER | 气压计传感器。 | | HDF_SENSOR_TYPE_TEMPERATURE | 温度传感器。 | | HDF_SENSOR_TYPE_HALL | 霍尔传感器。 | | HDF_SENSOR_TYPE_GESTURE | 手势传感器。 | | HDF_SENSOR_TYPE_PROXIMITY | 接近光传感器。 | | HDF_SENSOR_TYPE_HUMIDITY | 湿度传感器。 | | HDF_SENSOR_TYPE_MEDICAL_BEGIN | 医疗传感器ID枚举值范围的开始。 | | HDF_SENSOR_TYPE_MEDICAL_END | 医疗传感器ID枚举值范围的结束。 | | HDF_SENSOR_TYPE_PHYSICAL_MAX | 物理传感器最大类型。 | | HDF_SENSOR_TYPE_ORIENTATION | 方向传感器。 | | HDF_SENSOR_TYPE_GRAVITY | 重力传感器。 | | HDF_SENSOR_TYPE_LINEAR_ACCELERATION | 线性加速度传感器。 | | HDF_SENSOR_TYPE_ROTATION_VECTOR | 旋转矢量传感器。 | | HDF_SENSOR_TYPE_AMBIENT_TEMPERATURE | 环境温度传感器。 | | HDF_SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED | 未校准磁场传感器。 | | HDF_SENSOR_TYPE_GAME_ROTATION_VECTOR | 游戏旋转矢量传感器。 | | HDF_SENSOR_TYPE_GYROSCOPE_UNCALIBRATED | 未校准陀螺仪传感器。 | | HDF_SENSOR_TYPE_SIGNIFICANT_MOTION | 大幅度动作传感器。 | | HDF_SENSOR_TYPE_PEDOMETER_DETECTION | 计步器检测传感器。 | | HDF_SENSOR_TYPE_PEDOMETER | 计步器传感器。 | | HDF_SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR | 地磁旋转矢量传感器。 | | HDF_SENSOR_TYPE_HEART_RATE | 心率传感器。 | | HDF_SENSOR_TYPE_DEVICE_ORIENTATION | 设备方向传感器。 | | HDF_SENSOR_TYPE_WEAR_DETECTION | 佩戴检测传感器。 | | HDF_SENSOR_TYPE_ACCELEROMETER_UNCALIBRATED | 未校准加速度传感器。 | | HDF_SENSOR_TYPE_MAX | 传感器类型最大个数标识。 |