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