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