FlpLocationInterface 구조체 참조

FlpLocationInterface 구조체 참조

#include < fused_location.h >

데이터 필드

size_t 크기
정수(* 초기화 )( FlpCallbacks *콜백)
정수(* get_batch_size )()
정수(* start_batching )(int id, FlpBatchOptions *옵션)
정수(* update_batching_options )(int id, FlpBatchOptions *new_options)
정수(* stop_batching )(int id)
무효의(* 정리 )()
무효의(* get_batched_location )(int last_n_locations)
정수(* inject_location )( FlpLocation *위치)
const 무효 *(* get_extension )(const char *이름)
무효의(* 플러시_배치_위치 )()

상세 설명

표준 FLP 인터페이스를 나타냅니다.

fused_location.h 파일의 321번째 줄에 정의되어 있습니다.

현장 문서

무효(* 정리)()

인터페이스를 닫습니다. 진행 중인 일괄 작업이 있으면 중지해야 합니다.

fused_location.h 파일의 398번째 줄에 정의되어 있습니다.

무효(* 플러시_배치_위치)()

현재 저장된 모든 배치 위치를 검색하고 버퍼를 지웁니다. 플러시할 위치가 없는 경우에도 flp_location_callback은 응답으로 호출되어야 합니다(이 경우 num_locations는 0이어야 함). get_batched_location 또는 flash_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 - 가져올 위치 수. 이는 하나일 수도 있고 여러 개일 수도 있습니다. last_n_locations가 1이면 하드웨어에 알려진 최신 위치를 가져옵니다.

fused_location.h 파일의 412번째 줄에 정의되어 있습니다.

const void*(* get_extension)(const char *이름)

확장 정보에 대한 포인터를 가져옵니다.

fused_location.h 파일의 427번째 줄에 정의되어 있습니다.

int(* init)( FlpCallbacks *콜백)

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

fused_location.h 파일의 333번째 줄에 정의되어 있습니다.

int(* inject_location)( FlpLocation *위치)

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

fused_location.h 파일의 422번째 줄에 정의되어 있습니다.

size_t 사이즈

sizeof(FlpLocationInterface)로 설정

fused_location.h 파일의 325번째 줄에 정의되어 있습니다.

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입니다. 옵션 - 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번째 줄에 정의되어 있습니다.


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