FlpLocationInterface 结构体参考文档

FlpLocationInterface 结构体参考文档

#include < fused_location.h >

数据字段

size_t  尺寸
 
int(*  init )( FlpCallbacks *callbacks)
 
int(*  get_batch_size )()
 
int(*  start_batching )(int id, FlpBatchOptions *options)
 
int(*  update_batching_options )(int id, FlpBatchOptions *new_options)
 
int(*  stop_batching )(int id)
 
void(*  cleanup )()
 
void(*  get_batched_location )(int last_n_locations)
 
int(*  inject_location )( FlpLocation *location)
 
const void *(*  get_extension )(const char *name)
 
void(*  flush_batched_locations )()
 

详细说明

表示标准 FLP 接口。

定义位于文件 fused_location.h 的第 321 行。

字段文档

void(* cleanup)()

关闭界面。如果有任何批量操作正在进行,则应将其停止。

定义位于文件 fused_location.h 398 行。

void(* flush_batched_locations)()

检索当前存储的所有批量位置信息并清除缓冲区。必须调用 flp_location_callback 作为响应,即使没有要刷新的位置信息(在这种情况下,num_locations 应为 0)也是如此。对 get_batched_location 或 flush_batched_locations 的后续调用不应返回此调用中返回的任何位置。

定义位于文件 fused_location.h 436 行。

int(* get_batch_size)()

返回硬件中可用的批处理大小(以 FlpLocation 对象的数量表示)。请注意,不同的硬件实现可能具有不同的样本大小。此方法应返回以 FlpLocation 格式定义的样本数量。上层将使用此值来确定批处理间隔时间以及是否应唤醒 AP。

定义位于文件 fused_location.h 343 行。

void(* get_batched_location)(int last_n_locations)

获取已批处理的融合位置信息。flp_location_callback 用于返回位置信息。只有在缓冲区已满时,系统才会从缓冲区中丢弃位置对象。请勿仅仅因为已使用回调返回它而将其从缓冲区中移除。换句话说,如果没有新的地理位置对象,对 get_batched_location(1) 的两次调用应返回相同的地理位置对象。参数:last_n_locations - 要获取的位置数量。可以是 1 个或多个。如果 last_n_locations 为 1,则会获取硬件所知的最新位置。

定义位于文件 fused_location.h 412 行。

const void*(* get_extension)(const char *name)

获取指向扩展程序信息的指针。

定义位于文件 fused_location.h 427 行。

int(* init)( FlpCallbacks *callbacks)

打开接口并向此接口的实现提供回调例程。被调用后,您应通过调用 FlpCallbacks 中的 flp_capabilities_callback 来响应,以指定您的实现支持的功能。

定义位于文件 fused_location.h 333 行。

int(* inject_location)( FlpLocation *location)

从其他位置信息提供程序注入当前位置。纬度和经度以度为单位,预期精度以米为单位。参数:location - 要注入的位置对象。返回值:FLP_RESULT_SUCCESS 或 FLP_RESULT_ERROR。

定义位于文件 fused_location.h 422 行。

size_t size

设置为 sizeof(FlpLocationInterface)

定义位于文件 fused_location.h 325 行。

int(* start_batching)(int id, FlpBatchOptions *options)

开始批量处理营业地点。此 API 主要用于 AP 处于休眠状态且设备可以在硬件中批量处理位置信息时。flp_location_callback 用于返回位置信息。当缓冲区已满且使用 FLP_BATCH_WAKEUP_ON_FIFO_FULL 时,AP 会被唤醒。当缓冲区已满且未设置 FLP_BATCH_WAKEUP_ON_FIFO_FULL 时,系统会丢弃最早的位置对象。在这种情况下,AP 不会被唤醒。上层将使用 get_batched_location API 明确请求位置信息。如果设置了 FLP_BATCH_CALLBACK_ON_LOCATION_FIX,则实现会在每次有位置修正时调用 flp_location_callback。这会替换 FLP_BATCH_WAKEUP_ON_FIFO_FULL 标志设置。如果上层(调用方)知道 AP 可能会进入休眠状态,则有责任将其关闭。当系统处于高功耗模式时,这对于导航应用非常有用。参数:id - 请求的 ID。options - 请参阅 FlpBatchOptions 结构体定义。返回值:成功时为 FLP_RESULT_SUCCESS,失败时为 FLP_RESULT_INSUFFICIENT_MEMORY、FLP_RESULT_ID_EXISTS、FLP_RESULT_ERROR。

定义位于文件 fused_location.h 367 行。

int(* stop_batching)(int id)

停止批量处理。参数:id - 请求的 ID。返回值:成功时为 FLP_RESULT_SUCCESS,失败时为 FLP_RESULT_ID_UNKNOWN 或 FLP_RESULT_ERROR。

定义位于文件 fused_location.h 392 行

int(* update_batching_options)(int id, FlpBatchOptions *new_options)

更新与批处理请求关联的 FlpBatchOptions 。当批处理操作正在进行且需要更新批处理选项(例如 FLP_BATCH_WAKEUP_ON_FIFO_FULL)时,系统会使用此 API。例如,当 AP 处于唤醒状态且正在使用地图应用时,就可能会发生这种情况。参数:id - 现有批量请求的 ID。new_options - 更新后的 FlpBatchOptions 返回值:成功时为 FLP_RESULT_SUCCESS,失败时为 FLP_RESULT_ID_UNKNOWN、FLP_RESULT_ERROR。

定义位于文件 fused_location.h 382 行。


此结构体的文档是根据以下文件生成的: