FlpLocationInterface 结构参考

FlpLocationInterface 结构参考

#include < fused_location.h >

数据字段

尺寸_t尺寸
整数(*初始化)( FlpCallbacks *回调)
整数(*获取批次大小)()
整数(* start_batching )(int id, FlpBatchOptions *选项)
整数(* update_batching_options )(int id, FlpBatchOptions *new_options)
整数(* stop_batching )(int id)
空白(*清理)()
空白(* get_batched_location )(int last_n_locations)
整数(*注入位置)( FlpLocation *位置)
常量无效 *(* get_extension )(const char *name)
空白(*刷新批处理位置)()

详细说明

代表标准 FLP 接口。

文件fused_location.h321行的定义。

现场文档

无效(*清理)()

关闭界面。如果正在进行任何批处理操作,则应停止它们。

文件fused_location.h398行的定义。

void(*flush_batched_locations)()

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

文件fused_location.h436行的定义。

int(* get_batch_size)()

返回硬件中可用的批量大小(以FlpLocation对象的数量为单位)。请注意,不同的硬件实现可能具有不同的样本大小。这将返回以FlpLocation格式定义的样本数。上层将使用它来决定批处理间隔以及是否应唤醒 AP。

文件fused_location.h343行的定义。

void(* get_batched_location)(int last_n_locations)

获取批量的融合位置。 flp_location_callback 用于返回位置。仅当缓冲区已满时,位置对象才会从缓冲区中删除。不要仅仅因为它已使用回调返回而将其从缓冲区中删除。换句话说,当没有新的位置对象时,两次调用 get_batched_location(1) 应返回相同的位置对象。参数:last_n_locations - 要获取的位置数。这可以是一个或多个。如果last_n_locations 为1,您将获得硬件已知的最新位置。

文件fused_location.h412行的定义。

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

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

文件fused_location.h427行的定义。

int(* init)( FlpCallbacks *回调)

打开接口并为该接口的实现提供回调例程。一旦调用,您应该通过调用FlpCallbacks中的 flp_capability_callback 来响应,以指定您的实现支持的功能。

文件fused_location.h333行的定义。

int(* 注入位置)( FlpLocation *位置)

从另一个位置提供程序注入当前位置 纬度和经度以度为单位测量 预期精度以米为单位 参数: location - 被注入的位置对象。返回值:FLP_RESULT_SUCCESS 或 FLP_RESULT_ERROR。

文件fused_location.h422行的定义。

size_t 尺寸

设置为 sizeof(FlpLocationInterface)

文件fused_location.h325行的定义。

int(* start_batching)(int id, FlpBatchOptions *选项)

开始配料地点。该 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.h367行的定义。

int(* stop_batching)(int id)

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

文件fused_location.h392行的定义。

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.h382行的定义。


该结构的文档是从以下文件生成的: