1# ISensorInterface 2 3 4## 概述 5 6提供Sensor设备基本控制操作接口。 7 8操作包括获取传感器设备信息、订阅/取消订阅传感器数据、使能/去使能传感器、设置传感器模式、设置传感器精度、量程等可选配置接口定义。 9 10**Since:** 112.2 12**Version:** 131.0 14**相关模块:** 15 16[Sensor](_sensor.md) 17 18 19## 汇总 20 21 22### Public 成员函数 23 24 | 名称 | 描述 | 25| -------- | -------- | 26| [GetAllSensorInfo](#getallsensorinfo) ([out] struct [HdfSensorInformation](_hdf_sensor_information.md)[] info) | 获取当前系统中所有类型的传感器信息。 | 27| [Enable](#enable) ([in] int sensorId) | 根据传感器设备类型标识使能传感器信息列表里存在的设备,只有数据订阅者使能传感器后,才能获取订阅的传感器数据。 | 28| [Disable](#disable) ([in] int sensorId) | 根据传感器设备类型标识去使能传感器信息列表里存在的设备。 | 29| [SetBatch](#setbatch) ([in] int sensorId,[in] long samplingInterval, [in] long reportInterval) | 设置指定传感器的数据上报模式,不同的工作模式,上报数据的方式不同。 | 30| [SetMode](#setmode) ([in] int sensorId, [in] int mode) | 设置指定传感器数据上报模式。 | 31| [SetOption](#setoption) ([in] int sensorId, [in] unsigned int option) | 设置指定传感器量程、精度等可选配置。 | 32| [Register](#register) ([in] int groupId, [in] [ISensorCallback](interface_i_sensor_callback.md) callbackObj) | 订阅者注册传感器数据回调函数,系统会将获取到的传感器数据上报给订阅者。 | 33| [Unregister](#unregister) ([in] int groupId, [in] [ISensorCallback](interface_i_sensor_callback.md) callbackObj) | 订阅者取消注册传感器数据回调函数。 | 34 35 36## 成员函数说明 37 38 39### Disable() 40 41 42``` 43ISensorInterface::Disable ([in] int sensorId) 44``` 45**描述:** 46根据传感器设备类型标识去使能传感器信息列表里存在的设备。 47 48**参数:** 49 50 | 名称 | 描述 | 51| -------- | -------- | 52| sensorId | 唯一标识一个传感器设备类型,详见[HdfSensorTypeTag](_sensor.md#hdfsensortypetag)。 | 53 54**返回:** 55 56如果操作成功,则返回0。 57 58如果操作失败,则返回负值。 59 60 61### Enable() 62 63 64``` 65ISensorInterface::Enable ([in] int sensorId) 66``` 67**描述:** 68根据传感器设备类型标识使能传感器信息列表里存在的设备,只有数据订阅者使能传感器后,才能获取订阅的传感器数据。 69 70**参数:** 71 72 | 名称 | 描述 | 73| -------- | -------- | 74| sensorId | 唯一标识一个传感器设备类型,详见[HdfSensorTypeTag](_sensor.md#hdfsensortypetag)。 | 75 76**返回:** 77 78如果操作成功,则返回0。 79 80如果操作失败,则返回负值。 81 82 83### GetAllSensorInfo() 84 85 86``` 87ISensorInterface::GetAllSensorInfo ([out] struct HdfSensorInformation[] info) 88``` 89**描述:** 90获取当前系统中所有类型的传感器信息。 91 92**参数:** 93 94 | 名称 | 描述 | 95| -------- | -------- | 96| 输出系统中注册的所有传感器信息,一种类型传感器信息包括传感器名字、设备厂商、 | 固件版本号、硬件版本号、传感器类型编号、传感器标识、最大量程、精度、功耗,详见[HdfSensorInformation](_hdf_sensor_information.md)。 | 97 98**返回:** 99 100如果操作成功,则返回0。 101 102如果操作失败,则返回负值。 103 104 105### Register() 106 107 108``` 109ISensorInterface::Register ([in] int groupId, [in] ISensorCallback callbackObj ) 110``` 111**描述:** 112订阅者注册传感器数据回调函数,系统会将获取到的传感器数据上报给订阅者。 113 114**参数:** 115 116 | 名称 | 描述 | 117| -------- | -------- | 118| groupId | 传感器组ID。 groupId枚举值范围为128-160,表示已订阅医疗传感器服务,只需成功订阅一次,无需重复订阅。 groupId枚举值范围不在128-160之间,这意味着传统传感器已订阅,只需成功订阅一次,无需重复订阅。 | 119| callbackObj | 要注册的回调函数,详见[ISensorCallback](interface_i_sensor_callback.md)。 | 120 121**返回:** 122 123如果操作成功,则返回0。 124 125如果操作失败,则返回负数。 126 127 128### SetBatch() 129 130 131``` 132ISensorInterface::SetBatch ([in] int sensorId, [in] long samplingInterval, [in] long reportInterval ) 133``` 134**描述:** 135设置指定传感器的数据上报模式,不同的工作模式,上报数据的方式不同。 136 137**参数:** 138 139 | 名称 | 描述 | 140| -------- | -------- | 141| sensorId | 唯一标识一个传感器设备类型,详见[HdfSensorTypeTag](_sensor.md#hdfsensortypetag)。 | 142| samplingInterval | 设置指定传感器的数据采样间隔,单位纳秒。 | 143| reportInterval | 表示传感器数据上报间隔,单位纳秒。 | 144 145**返回:** 146 147如果操作成功,则返回0。 148 149如果操作失败,则返回负值。 150 151 152### SetMode() 153 154 155``` 156ISensorInterface::SetMode ([in] int sensorId, [in] int mode ) 157``` 158**描述:** 159设置指定传感器数据上报模式。 160 161**参数:** 162 163 | 名称 | 描述 | 164| -------- | -------- | 165| sensorId | 唯一标识一个传感器设备类型,详见[HdfSensorTypeTag](_sensor.md#hdfsensortypetag)。 | 166| mode | 传感器的数据上报模式,详见[HdfSensorModeType](_sensor.md#hdfsensormodetype)。 | 167 168**返回:** 169 170如果操作成功,则返回0。 171 172如果操作失败,则返回负数。 173 174 175### SetOption() 176 177 178``` 179ISensorInterface::SetOption ([in] int sensorId, [in] unsigned int option ) 180``` 181**描述:** 182设置指定传感器量程、精度等可选配置。 183 184**参数:** 185 186 | 名称 | 描述 | 187| -------- | -------- | 188| sensorId | 唯一标识一个传感器设备类型,详见[HdfSensorTypeTag](_sensor.md#hdfsensortypetag)。 | 189| option | 表示要设置的选项,如测量范围和精度。 | 190 191**返回:** 192 193如果操作成功,则返回0。 194 195如果操作失败,则返回负数。 196 197 198### Unregister() 199 200 201``` 202ISensorInterface::Unregister ([in] int groupId, [in] ISensorCallback callbackObj ) 203``` 204**描述:** 205订阅者取消注册传感器数据回调函数。 206 207**参数:** 208 209 | 名称 | 描述 | 210| -------- | -------- | 211| groupId | 传感器组ID。 groupId枚举值范围为128-160,表示已订阅医疗传感器服务。只需成功取消订阅一次,无需重复取消订阅。 groupId枚举值范围不在128-160之间,这意味着传统传感器已订阅。并且成功取消订阅。 | 212| callbackObj | 要取消注册的回调函数,详见[ISensorCallback](interface_i_sensor_callback.md)。 | 213 214**返回:** 215 216如果操作成功,则返回0。 217 218如果操作失败,则返回负数。 219