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 FILE의 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 객체 수)를 반환합니다. HW 구현에 따라 샘플 크기가 다를 수 있습니다. 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 FILE의 427 라인에 정의가 있습니다.

int(* init)( FlpCallbacks *callbacks)

인터페이스를 열고 이 인터페이스의 구현에 콜백 루틴을 제공합니다. 호출되면 FlpCallbacks 에서 flp_capabilities_callback을 호출하여 구현에서 지원하는 기능을 지정하여 응답해야 합니다.

fused_location.h 파일의 333 줄에 있는 정의입니다.

int(* inject_location)( FlpLocation *location)

다른 위치 정보 제공업체의 현재 위치를 삽입합니다. 위도와 경도는 도 단위로 측정되며 예상 정확도는 미터 단위로 측정됩니다. 매개변수: 위치 - 삽입되는 위치 객체입니다. 반환 값: FLP_RESULT_SUCCESS 또는 FLP_RESULT_ERROR

fused_location.h 파일의 422 줄에 있는 정의입니다.

size_t 크기

sizeof(FlpLocationInterface)로 설정

fused_location.h FILE의 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 FILE의 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 번 라인에 정의가 있습니다.


이 구조체에 관한 문서는 다음 파일에서 생성되었습니다.