مرجع بنية FlpLocationInterface
#include <
fused_location.h
>
حقول البيانات |
|
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 )() |
وصف مفصّل
يمثّل واجهة FLP العادية.
التعريف في السطر 321 من الملف fused_location.h .
مستندات الحقل
void(* cleanup)() |
إغلاق الواجهة إذا كانت أي عمليات مجمّعة قيد التنفيذ، يجب إيقافها.
التعريف في السطر 398 من الملف fused_location.h .
void(* flush_batched_locations)() |
استرداد جميع المواقع الجغرافية المجمّعة المخزّنة حاليًا ومحو المخزن المؤقت. يجب استدعاء flp_location_callback استجابةً لذلك، حتى إذا لم تكن هناك مواقع جغرافية لتفريغها (في هذه الحالة، يجب أن يكون num_locations يساوي 0). يجب ألا تُعرِض الطلبات اللاحقة التي يتم إجراؤها على get_batched_location أو flush_batched_locations أيًا من المواقع الجغرافية التي تم عرضها في هذه الطلب.
التعريف في السطر 436 من الملف fused_location.h .
int(* get_batch_size)() |
عرض حجم الحزمة (بعدد موارد FlpLocation المتوفّرة في الجهاز) يُرجى العِلم أنّ عمليات تنفيذ الأجهزة المختلفة قد تختلف في أحجام العيّنات. سيؤدي ذلك إلى عرض عدد العيّنات المحدّدة بتنسيق FlpLocation . ستستخدم الطبقة العليا هذه المعلومات لتحديد الفاصل الزمني لتجميع البيانات وما إذا كان يجب تنشيط نقطة الوصول أم لا.
التعريف في السطر 343 من الملف fused_location.h .
void(* get_batched_location)(int last_n_locations) |
الحصول على الموقع الجغرافي المدمج الذي تم تجميعه. يتم استخدام flp_location_callback لعرض الموقع الجغرافي. لا يتم حذف عنصر الموقع الجغرافي من المخزن المؤقت إلا عندما يكون المخزن المؤقت ممتلئًا. لا تزيلها من المخزن المؤقت لمجرد أنّه تم إرجاعها باستخدام دالة الاستدعاء. بعبارة أخرى، عندما لا يتوفّر عنصر موقع جغرافي جديد، من المفترض أن تؤدي طلبتَا الاتصال get_batched_location(1) إلى عرض عنصر الموقع الجغرافي نفسه. المَعلمات: last_n_locations - عدد المواقع الجغرافية المطلوب الحصول عليها. يمكن أن يكون هذا الإجراء واحدًا أو عدة إجراءات. إذا كان last_n_locations يساوي 1، ستحصل على آخر موقع جغرافي معروف للجهاز.
التعريف في السطر 412 من الملف fused_location.h .
const void*(* get_extension)(const char *name) |
الحصول على مؤشر إلى معلومات الإضافة
التعريف في السطر 427 من الملف fused_location.h .
int(* init)( FlpCallbacks *callbacks) |
يفتح الواجهة ويقدّم إجراءات الاستدعاء لتنفيذ هذه الواجهة. بعد تلقّي الاتصال، عليك الردّ من خلال استدعاء flp_capabilities_callback في FlpCallbacks لتحديد الإمكانات التي يتيحها التنفيذ.
التعريف في السطر 333 من الملف fused_location.h .
int(* inject_location)( FlpLocation *location) |
تُستخدَم هذه السمة لإدراج الموقع الجغرافي الحالي من مقدّم خدمة موقع جغرافي آخر. ويتم قياس خطوط الطول والعرض بالدرجات، ويتم قياس الدقة المتوقّعة بالمتر. المَعلمات: location - عنصر الموقع الجغرافي الذي يتم إدراجه القيمة المعروضة: FLP_RESULT_SUCCESS أو FLP_RESULT_ERROR
التعريف في السطر 422 من الملف fused_location.h .
الحجم size_t |
تم ضبطه على sizeof(FlpLocationInterface)
التعريف في السطر 325 من الملف fused_location.h .
int(* start_batching)(int id, FlpBatchOptions *options) |
ابدأ بتجميع المواقع الجغرافية. تُستخدَم واجهة برمجة التطبيقات هذه بشكل أساسي عندما يكون نقطة الوصول في وضع السكون ويمكن للجهاز تجميع المواقع الجغرافية في الأجهزة. ويُستخدَم flp_location_callback لعرض المواقع الجغرافية. عندما يكون المخزن المؤقت ممتلئًا ويتم استخدام FLP_BATCH_WAKEUP_ON_FIFO_FULL، يتم تنشيط نقطة الوصول. عندما يكون المخزن المؤقت ممتلئًا ولم يتم ضبط FLP_BATCH_WAKEUP_ON_FIFO_FULL، يتم إسقاط عنصر الموقع الجغرافي الأقدم. في هذه الحالة، لن يتم تنشيط نقطة الوصول. ستستخدم الطبقة العليا واجهة برمجة التطبيقات get_batched_location لطلب الموقع الجغرافي صراحةً. في حال ضبط FLP_BATCH_CALLBACK_ON_LOCATION_FIX، سيستدعي التنفيذ flp_location_callback في كل مرة يتم فيها تصحيح الموقع الجغرافي. يلغي هذا الإعداد علامة FLP_BATCH_WAKEUP_ON_FIFO_FULL. تقع على عاتق الطبقات العليا (المتصل) مسؤولية إيقافه، إذا كانت تعلم أنّ نقطة الوصول قد تنتقل إلى وضع السكون. يكون هذا مفيدًا للتطبيقات التي تتطلب التنقّل عندما يكون النظام في وضع الطاقة العالية. المَعلمات: id - رقم تعريف الطلب. options - راجِع تعريف البنية FlpBatchOptions . القيمة المعروضة: FLP_RESULT_SUCCESS في حال النجاح، FLP_RESULT_INSUFFICIENT_MEMORY، FLP_RESULT_ID_EXISTS، FLP_RESULT_ERROR في حال الخطأ
التعريف في السطر 367 من الملف fused_location.h .
int(* stop_batching)(int id) |
أوقِف ميزة "المعالجة المجمّعة". المَعلمات: id - معرّف الطلب القيمة المعروضة: FLP_RESULT_SUCCESS في حال النجاح، أو FLP_RESULT_ID_UNKNOWN أو FLP_RESULT_ERROR في حال الفشل.
التعريف في السطر 392 من الملف fused_location.h .
int(* update_batching_options)(int id, FlpBatchOptions *new_options) |
عدِّل FlpBatchOptions المرتبط بطلب تجميع. عندما تكون عملية تجميع قيد التقدّم ويجب تعديل خيار تجميع مثل FLP_BATCH_WAKEUP_ON_FIFO_FULL، سيتم استخدام واجهة برمجة التطبيقات هذه. على سبيل المثال، يمكن أن يحدث ذلك عندما يكون نقطة الوصول مفعَّلة ويتم استخدام تطبيق الخرائط. المَعلمات: id - معرّف طلب دفعة حالي. new_options - خيارات معدَّلة FlpBatchOptions قيمة الإرجاع: FLP_RESULT_SUCCESS في حال النجاح، FLP_RESULT_ID_UNKNOWN، FLP_RESULT_ERROR في حال حدوث خطأ.
التعريف في السطر 382 من الملف fused_location.h .
تم إنشاء مستندات هذه البنية من الملف التالي:
- hardware/libhardware/include/hardware/ fused_location.h