1# IGeofenceCallback 2 3 4## 概述 5 6定义地理围栏模块的回调函数 7 8用户在开启地理围栏功能前,需要先注册该回调函数。当地理围栏状态发生变化时,会通过回调函数进行上报。 详情可参考**ICellfenceInterface**。 9 10**起始版本:** 4.0 11 12**相关模块:**[HdiLpfenceGeofence](_hdi_lpfence_geofence.md) 13 14 15## 汇总 16 17 18### Public 成员函数 19 20| 名称 | 描述 | 21| -------- | -------- | 22| [OnGeofenceAddResultCb](#ongeofenceaddresultcb) ([in] struct [GeofenceResult](lpfence_geofence_result.md)[] res) | 定义添加地理围栏结果的回调函数。 | 23| [OnGeofenceRemoveResultCb](#ongeofenceremoveresultcb) ([in] struct [GeofenceResult](lpfence_geofence_result.md)[] res) | 定义删除地理围栏结果的回调函数。 | 24| [OnGeofenceTransitionCb](#ongeofencetransitioncb) ([in] int geofenceId, [in] struct [GeoLocationInfo](lpfence_geo_location_info.md) location, [in] unsigned char transition, [in] long timeStamp) | 定义地理围栏状态变化的回调函数。 | 25| [OnGetGeofenceSizeCb](#ongetgeofencesizecb) ([in] struct [GeofenceSize](lpfence_geofence_size.md) size) | 定义地理围栏使用信息的回调函数。 | 26| [OnGeofenceRequestCellDb](#ongeofencerequestcelldb) ([in] struct [RequestCellDb](lpfence_request_cell_db.md) req) | 定义请求基站离线数据库的回调函数。 | 27| [OnGetCurrentLocation](#ongetcurrentlocation) ([in] int locSource, [in] struct [GeoLocationInfo](lpfence_geo_location_info.md) location) | 定义获取设备最新位置信息的回调函数。 | 28| [OnGeofenceReset](#ongeofencereset) () | 定义低功耗围栏服务复位事件通知的回调函数。 | 29 30 31## 成员函数说明 32 33 34### OnGeofenceAddResultCb() 35 36``` 37IGeofenceCallback::OnGeofenceAddResultCb ([in] struct GeofenceResult[] res) 38``` 39 40**描述** 41 42 43定义添加地理围栏结果的回调函数。 44 45对每个地理围栏的添加结果,通过该回调函数进行上报。 46 47**起始版本:** 4.0 48 49**参数:** 50 51| 名称 | 描述 | 52| -------- | -------- | 53| res | 上报地理围栏添加结果。详见[GeofenceResult](lpfence_geofence_result.md)定义。 | 54 55**返回:** 56 57如果调用成功,则返回0。 58 59如果调用失败,则返回负值。 60 61 62### OnGeofenceRemoveResultCb() 63 64``` 65IGeofenceCallback::OnGeofenceRemoveResultCb ([in] struct GeofenceResult[] res) 66``` 67 68**描述** 69 70 71定义删除地理围栏结果的回调函数。 72 73对每个地理围栏的删除结果,通过该回调函数进行上报。 74 75**起始版本:** 4.0 76 77**参数:** 78 79| 名称 | 描述 | 80| -------- | -------- | 81| res | 上报地理围栏删除结果。详见[GeofenceResult](lpfence_geofence_result.md)定义。 | 82 83**返回:** 84 85如果调用成功,则返回0。 86 87如果调用失败,则返回负值。 88 89 90### OnGeofenceRequestCellDb() 91 92``` 93IGeofenceCallback::OnGeofenceRequestCellDb ([in] struct RequestCellDb req) 94``` 95 96**描述** 97 98 99定义请求基站离线数据库的回调函数。 100 101设备请求基站离线数据库时,会通过该回调函数进行上报。 102 103**起始版本:** 4.0 104 105**参数:** 106 107| 名称 | 描述 | 108| -------- | -------- | 109| req | 请求基站离线数据库数据结构。详见[RequestCellDb](lpfence_request_cell_db.md)定义。 | 110 111**返回:** 112 113如果调用成功,则返回0。 114 115如果调用失败,则返回负值。 116 117 118### OnGeofenceReset() 119 120``` 121IGeofenceCallback::OnGeofenceReset () 122``` 123 124**描述** 125 126 127定义低功耗围栏服务复位事件通知的回调函数。 128 129低功耗围栏服务发生复位时会通过该回调函数进行事件上报。 130 131**起始版本:** 4.0 132 133**返回:** 134 135如果回调函数调用成功,则返回0。 136 137如果回调函数调用失败,则返回负值。 138 139 140### OnGeofenceTransitionCb() 141 142``` 143IGeofenceCallback::OnGeofenceTransitionCb ([in] int geofenceId, [in] struct GeoLocationInfo location, [in] unsigned char transition, [in] long timeStamp ) 144``` 145 146**描述** 147 148 149定义地理围栏状态变化的回调函数。 150 151设备与地理围栏的状态关系发生变化时,会通过该回调函数进行上报。 152 153**起始版本:** 4.0 154 155**参数:** 156 157| 名称 | 描述 | 158| -------- | -------- | 159| geofenceId | 地理围栏id号。 | 160| location | 最新的位置坐标。详见[GeoLocationInfo](lpfence_geo_location_info.md)定义。 | 161| transition | 地理围栏变化的状态。详见[GeofenceTransition](_hdi_lpfence_geofence.md#geofencetransition)定义。 | 162| timeStamp | 时间戳。 | 163 164**返回:** 165 166如果调用成功,则返回0。 167 168如果调用失败,则返回负值。 169 170 171### OnGetCurrentLocation() 172 173``` 174IGeofenceCallback::OnGetCurrentLocation ([in] int locSource, [in] struct GeoLocationInfo location ) 175``` 176 177**描述** 178 179 180定义获取设备最新位置信息的回调函数。 181 182请求获取设备最新位置信息时,会通过该回调函数进行上报。 183 184**起始版本:** 4.0 185 186**参数:** 187 188| 名称 | 描述 | 189| -------- | -------- | 190| locSource | 位置信息来源。详见[GeofenceLocSource](_hdi_lpfence_geofence.md#geofencelocsource)定义。 | 191| location | 最新位置信息。详见[GeoLocationInfo](lpfence_geo_location_info.md)定义。 | 192 193**返回:** 194 195如果调用成功,则返回0。 196 197如果调用失败,则返回负值。 198 199 200### OnGetGeofenceSizeCb() 201 202``` 203IGeofenceCallback::OnGetGeofenceSizeCb ([in] struct GeofenceSize size) 204``` 205 206**描述** 207 208 209定义地理围栏使用信息的回调函数。 210 211获取地理围栏使用信息时,会通过该回调函数进行上报。 212 213**起始版本:** 4.0 214 215**参数:** 216 217| 名称 | 描述 | 218| -------- | -------- | 219| size | 地理围栏使用信息。详见[GeofenceSize](lpfence_geofence_size.md)定义。 | 220 221**返回:** 222 223如果调用成功,则返回0。 224 225如果调用失败,则返回负值。 226