oh_sensor_type.h
概述
定义常用传感器属性。
库: libohsensor.so
系统能力: SystemCapability.Sensors.Sensor
起始版本: 11
相关模块: Sensor
汇总
类型定义
名称 | 描述 |
---|---|
Sensor_Type | 枚举传感器类型。 |
Sensor_Result | 定义传感器错误码。 |
Sensor_Accuracy | 枚举传感器报告的数据的精度级别。 |
Sensor_Info | 定义传感器信息。 |
Sensor_Event | 定义传感器数据信息。 |
Sensor_SubscriptionId | 定义传感器订阅ID,唯一标识传感器。 |
Sensor_SubscriptionAttribute | 定义传感器订阅属性。 |
void (Sensor_EventCallback) (Sensor_Event *event) | 定义用于报告传感器数据的回调函数。 |
Sensor_Subscriber | 定义传感器订阅者信息。 |
枚举
名称 | 描述 |
---|---|
Sensor_Type { SENSOR_TYPE_ACCELEROMETER = 1, SENSOR_TYPE_GYROSCOPE = 2, SENSOR_TYPE_AMBIENT_LIGHT = 5, SENSOR_TYPE_MAGNETIC_FIELD = 6, SENSOR_TYPE_BAROMETER = 8, SENSOR_TYPE_HALL = 10, SENSOR_TYPE_PROXIMITY = 12, SENSOR_TYPE_ORIENTATION = 256, SENSOR_TYPE_GRAVITY = 257, SENSOR_TYPE_ROTATION_VECTOR = 259, SENSOR_TYPE_PEDOMETER_DETECTION = 265, SENSOR_TYPE_PEDOMETER = 266, SENSOR_TYPE_HEART_RATE = 278 } |
枚举传感器类型。 |
Sensor_Result { SENSOR_SUCCESS = 0, SENSOR_PERMISSION_DENIED = 201, SENSOR_PARAMETER_ERROR = 401, SENSOR_SERVICE_EXCEPTION = 14500101 } |
定义传感器错误码。 |
Sensor_Accuracy { SENSOR_ACCURACY_UNRELIABLE = 0, SENSOR_ACCURACY_LOW = 1, SENSOR_ACCURACY_MEDIUM = 2, SENSOR_ACCURACY_HIGH = 3 } |
枚举传感器报告的数据的精度级别。 |
函数
名称 | 描述 |
---|---|
OH_Sensor_CreateInfos(uint32_t count) | 用给定的数字创建一个实例数组,请参考 Sensor_Info。 |
OH_Sensor_DestroyInfos(Sensor_Info **sensors, uint32_t count) | 销毁实例数组并回收内存,请参考 Sensor_Info。 |
OH_SensorInfo_GetName(Sensor_Info *sensor, char *sensorName, uint32_t *length) | 获取传感器名称。 |
OH_SensorInfo_GetVendorName(Sensor_Info *sensor, char *vendorName, uint32_t *length) | 获取传感器的厂商名称。 |
OH_SensorInfo_GetType(Sensor_Info *sensor, | 获取传感器类型。 |
OH_SensorInfo_GetResolution (Sensor_Info *sensor, float *resolution) | 获取传感器分辨率。 |
OH_SensorInfo_GetMinSamplingInterval (Sensor_Info *sensor, int64_t *minSamplingInterval) | 获取传感器的最小数据上报间隔。 |
OH_SensorInfo_GetMaxSamplingInterval (Sensor_Info *sensor, int64_t *maxSamplingInterval) | 获取传感器的最大数据上报间隔时间。 |
OH_SensorEvent_GetType (Sensor_Event *sensorEvent, Sensor_Type *sensorType) | 获取传感器类型。 |
OH_SensorEvent_GetTimestamp (Sensor_Event *sensorEvent, int64_t *timestamp) | 获取传感器数据的时间戳。 |
OH_SensorEvent_GetAccuracy (Sensor_Event *sensorEvent, Sensor_Accuracy *accuracy) | 获取传感器数据的精度。 |
OH_SensorEvent_GetData (Sensor_Event *sensorEvent, float **data, uint32_t *length) | 获取传感器数据。数据的长度和内容依赖于监听的传感器类型,传感器上报的数据格式如下: SENSOR_TYPE_ACCELEROMETER:data[0]、data[1]、data[2]分别表示设备x、y、z轴的加速度分量,单位m/s²; SENSOR_TYPE_GYROSCOPE:data[0]、data[1]、data[2]分别表示设备x、y、z轴的旋转角速度,单位弧度/s; SENSOR_TYPE_AMBIENT_LIGHT:data[0]表示环境光强度,in lux; SENSOR_TYPE_MAGNETIC_FIELD:data[0]、data[1]、data[2]分别表示设备x、y、z轴的地磁分量,单位微特斯拉; SENSOR_TYPE_BAROMETER:data[0]表示气压值,单位hPa; SENSOR_TYPE_HALL: data[0]表示皮套吸合状态,0表示打开,大于0表示吸附; SENSOR_TYPE_PROXIMITY:data[0]表示接近状态,0表示接近,大于0表示远离; SENSOR_TYPE_ORIENTATION:data[0]、data[1]、data[2]分别表示设备绕z、x、y轴的角度,单位度; SENSOR_TYPE_GRAVITY:data[0]、data[1]、data[2]分别表示设备x、y、z轴的重力加速度分量,单位m/s²; SENSOR_TYPE_ROTATION_VECTOR:data[0]、data[1]、data[2]分别表示设备x、y、z轴的旋转角度,单位度,data[3]表示旋转向量元素; SENSOR_TYPE_PEDOMETER_DETECTION:data[0]表示几步检测状态,1表示检测到了步数变化; SENSOR_TYPE_PEDOMETER:data[0]表示步数; SENSOR_TYPE_HEART_RATE:data[0]表示心率数值。 |
OH_Sensor_CreateSubscriptionId (void) | 创建一个Sensor_SubscriptionId实例。 |
OH_Sensor_DestroySubscriptionId (Sensor_SubscriptionId *id) | 销毁Sensor_SubscriptionId实例并回收内存。 |
OH_SensorSubscriptionId_GetType (Sensor_SubscriptionId *id, Sensor_Type *sensorType) | 获取传感器类型。 |
OH_SensorSubscriptionId_SetType (Sensor_SubscriptionId *id, const Sensor_Type sensorType) | 设置传感器类型。 |
OH_Sensor_CreateSubscriptionAttribute (void) | 创建Sensor_SubscriptionAttribute实例。 |
OH_Sensor_DestroySubscriptionAttribute (Sensor_SubscriptionAttribute *attribute) | 销毁Sensor_SubscriptionAttribute实例并回收内存。 |
OH_SensorSubscriptionAttribute_SetSamplingInterval (Sensor_SubscriptionAttribute *attribute, const int64_t samplingInterval) | 设置传感器数据报告间隔。 |
OH_SensorSubscriptionAttribute_GetSamplingInterval (Sensor_SubscriptionAttribute *attribute, int64_t *samplingInterval) | 获取传感器数据报告间隔。 |
OH_Sensor_CreateSubscriber (void) | 创建一个Sensor_Subscriber实例。 |
OH_Sensor_DestroySubscriber (Sensor_Subscriber *subscriber) | 销毁Sensor_Subscriber实例并回收内存。 |
OH_SensorSubscriber_SetCallback (Sensor_Subscriber *subscriber, const Sensor_EventCallback callback) | 设置一个回调函数来报告传感器数据。 |
OH_SensorSubscriber_GetCallback (Sensor_Subscriber *subscriber, Sensor_EventCallback *callback) | 获取用于报告传感器数据的回调函数。 |