Odwołania do struktury FlpLocationInterface
#include <
fused_location.h
>
Pola danych |
|
size_t | size |
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 )() |
Szczegółowy opis
Reprezentuje standardowy interfejs FLP.
Definicja w wierszu 321 pliku fused_location.h .
Dokumentacja pola
void(* cleanup)() |
Zamyka interfejs. Jeśli w trakcie są jakieś operacje zbiorcze, należy je zatrzymać.
Definicja w wierszu 398 pliku fused_location.h .
void(* flush_batched_locations)() |
Pobierz wszystkie przetworzone lokalizacje i wyczyść bufor. W odpowiedzi musi zostać wywołana funkcja flp_location_callback, nawet jeśli nie ma lokalizacji do wyczyszczenia (w takim przypadku parametr num_locations powinien mieć wartość 0). Kolejne wywołania funkcji get_batched_location lub flush_batched_locations nie powinny zwracać żadnych lokalizacji zwróconych w tym wywołaniu.
Definicja w wierszu 436 pliku fused_location.h .
int(* get_batch_size)() |
Zwraca rozmiar partii (liczbę obiektów FlpLocation ) dostępnych na sprzęcie. Pamiętaj, że różne implementacje sprzętowe mogą mieć różne rozmiary próbek. Zwraca liczbę próbek zdefiniowanych w formacie FlpLocation . Ta wartość będzie używana przez warstwę wyższą do określania interwału grupowania i ustalania, czy punkt dostępu ma się obudzić.
Definicja w wierszu 343 pliku fused_location.h .
void(* get_batched_location)(int last_n_locations) |
Pobierz złączoną lokalizację, która została zgrupowana. Do zwrócenia lokalizacji służy parametr flp_location_callback. Obiekt lokalizacji jest usuwany z bufora tylko wtedy, gdy jest pełny. Nie usuwaj go z bufora tylko dlatego, że zostało zwrócone za pomocą funkcji z powrotem. Inaczej mówiąc, gdy nie ma nowego obiektu lokalizacji, 2 wywołania get_batched_location(1) powinny zwracać ten sam obiekt lokalizacji. Parametry: last_n_locations – liczba lokalizacji do pobrania. Może być ich jeden lub wiele. Jeśli last_n_locations ma wartość 1, otrzymasz ostatnią lokalizację znaną sprzętowi.
Definicja w wierszu 412 pliku fused_location.h .
const void*(* get_extension)(const char *name) |
Uzyskaj wskazówkę dotyczącą informacji o rozszerzeniu.
Definicja w wierszu 427 pliku fused_location.h .
int(* init)( FlpCallbacks *callbacks) |
Otwiera interfejs i zapewnia procedury wywołania dla implementacji tego interfejsu. Po wywołaniu należy odpowiedzieć, wywołując funkcję flp_capabilities_callback w , aby określić funkcje obsługiwane przez Twoją implementację.
Definicja w wierszu 333 pliku fused_location.h .
int(* inject_location)( FlpLocation *location); |
Wstrzykuje bieżącą lokalizację z innego dostawcy lokalizacji. Szerokość i długość geograficzna są mierzone w stopniach, a oczekiwana dokładność – w metrach. Parametry: location – obiekt lokalizacji, który jest wstrzykiwany. Wartość zwracana: FLP_RESULT_SUCCESS lub FLP_RESULT_ERROR.
Definicja w wierszu 422 w pliku fused_location.h .
size_t size |
ustaw na sizeof(FlpLocationInterface)
Definicja w wierszu 325 pliku fused_location.h .
int(* start_batching)(int id, FlpBatchOptions *options) |
Rozpocznij grupowanie lokalizacji. Ten interfejs API jest używany głównie wtedy, gdy punkt dostępu jest w stanie uśpienia, a urządzenie może grupować lokalizacje na sprzęcie. Do zwracania lokalizacji służy funkcja flp_location_callback. Gdy bufor jest pełny i używany jest parametr FLP_BATCH_WAKEUP_ON_FIFO_FULL, AP jest wybudzane. Gdy bufor jest pełny, a nie ustawiono parametru FLP_BATCH_WAKEUP_ON_FIFO_FULL, najstarszy obiekt lokalizacji zostaje odrzucony. W tym przypadku AP nie zostanie wybudzony. Warstwy wyższe będą używać interfejsu get_batched_location API, aby wyraźnie poprosić o lokalizację. Jeśli ustawiono parametr FLP_BATCH_CALLBACK_ON_LOCATION_FIX, implementacja wywoła funkcję flp_location_callback za każdym razem, gdy zostanie znaleziony punkt docelowy. To zastąpi ustawienie flagi FLP_BATCH_WAKEUP_ON_FIFO_FULL. Wyłączenie tego trybu jest obowiązkiem wyższych warstw (wywołującego), jeśli wiedzą, że AP może przejść w stan uśpienia. Jest to przydatne w przypadku aplikacji do nawigacji, gdy system jest w trybie wysokiej mocy. Parametry: id – identyfikator żądania. options – zobacz definicję elementu struct FlpBatchOptions . Wartość zwracana: FLP_RESULT_SUCCESS w przypadku powodzenia, FLP_RESULT_INSUFFICIENT_MEMORY, FLP_RESULT_ID_EXISTS, FLP_RESULT_ERROR w przypadku błędu.
Definicja w wierszu 367 pliku fused_location.h .
int(* stop_batching)(int id) |
Zatrzymaj grupowanie. Parametry: id – identyfikator żądania. Wartość zwracana: FLP_RESULT_SUCCESS w przypadku powodzenia, FLP_RESULT_ID_UNKNOWN lub FLP_RESULT_ERROR w przypadku błędu.
Definicja w wierszu 392 pliku fused_location.h .
int(* update_batching_options)(int id, FlpBatchOptions *new_options) |
Zaktualizuj FlpBatchOptions powiązane z żądaniem zbiorczym. Gdy trwa operacja grupowania i trzeba zaktualizować opcję grupowania, np. FLP_BATCH_WAKEUP_ON_FIFO_FULL, używany jest ten interfejs API. Może się tak zdarzyć, gdy AP jest aktywny i użytkownik korzysta z aplikacji Mapy. Parametry: id – identyfikator istniejącego zbiorczego żądania. new_options – zaktualizowane FlpBatchOptions Zwracana wartość: FLP_RESULT_SUCCESS w przypadku powodzenia, FLP_RESULT_ID_UNKNOWN, FLP_RESULT_ERROR w przypadku błędu.
Definicja w wierszu 382 w pliku fused_location.h .
Dokumentacja tego typu danych została wygenerowana z tego pliku:
- hardware/libhardware/include/hardware/ fused_location.h