การอ้างอิง FlpLocationInterface Struct

การอ้างอิง FlpLocationInterface Struct

#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 เลเยอร์บนจะใช้ข้อมูลนี้เพื่อตัดสินใจเกี่ยวกับช่วงเวลาการแบ่งกลุ่มและควรปลุก AP หรือไม่

คําจํากัดความที่บรรทัด 343 ของไฟล์ fused_location.h .

void(* get_batched_location)(int last_n_locations)

รับตำแหน่งที่ผสานซึ่งจัดกลุ่มไว้ ระบบจะใช้ flp_location_callback เพื่อแสดงตำแหน่ง ระบบจะทิ้งออบเจ็กต์ตำแหน่งออกจากบัฟเฟอร์ก็ต่อเมื่อบัฟเฟอร์เต็มเท่านั้น อย่านำข้อมูลออกจากบัฟเฟอร์เพียงเพราะมีการคืนค่าโดยใช้การเรียกกลับ กล่าวคือ เมื่อไม่มีออบเจ็กต์ตำแหน่งใหม่ การเรียก get_batched_location(1) 2 ครั้งควรแสดงผลออบเจ็กต์ตำแหน่งเดียวกัน พารามิเตอร์: last_n_locations - จํานวนสถานที่ที่จะรับ ซึ่งอาจเป็น 1 รายการหรือหลายรายการก็ได้ หาก 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 size

ตั้งค่าเป็น sizeof(FlpLocationInterface)

คําจํากัดความที่บรรทัด 325 ของไฟล์ fused_location.h .

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 ทุกครั้งที่มีการแก้ไขตำแหน่ง ซึ่งจะลบล้างการตั้งค่า Flag FLP_BATCH_WAKEUP_ON_FIFO_FULL เลเยอร์บน (ผู้เรียก) มีหน้าที่รับผิดชอบในการปิด AP หากทราบว่า AP อาจเข้าสู่โหมดสลีป ซึ่งมีประโยชน์สำหรับแอปพลิเคชันการนำทางเมื่อระบบอยู่ในโหมดพลังงานสูง พารามิเตอร์: 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 ที่เชื่อมโยงกับคําขอการรวม ระบบจะใช้ API นี้เมื่อการดำเนินการเป็นกลุ่มอยู่ระหว่างดำเนินการและจำเป็นต้องอัปเดตตัวเลือกการทํางานเป็นกลุ่ม เช่น FLP_BATCH_WAKEUP_ON_FIFO_FULL เช่น กรณีนี้อาจเกิดขึ้นเมื่อ AP เปิดอยู่และมีการใช้แอปพลิเคชันแผนที่ พารามิเตอร์: id - รหัสของคําขอกลุ่มที่มีอยู่ new_options - อัปเดตแล้ว FlpBatchOptions ผลลัพธ์: FLP_RESULT_SUCCESS หากสําเร็จ, FLP_RESULT_ID_UNKNOWN, FLP_RESULT_ERROR หากเกิดข้อผิดพลาด

คําจํากัดความที่บรรทัด 382 ของไฟล์ fused_location.h .


เอกสารประกอบสำหรับโครงสร้างนี้สร้างขึ้นจากไฟล์ต่อไปนี้