camera2_frame_queue_dst_ops מבנה הפניה

camera2_frame_queue_dst_ops מבנה הפניה

#include < camera2.h >

שדות נתונים

int(* dequeue_frame )(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer)
int(* cancel_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)
int(* enqueue_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)

תיאור מפורט

פרוטוקול תור פלט של מסגרת:

המסגרת מחזיקה את התור ואת תוכנו. בהתחלה, התור ריק.

  1. כאשר ההתקן מוכן למלא מסגרת של פלט של מטא נתונים, הוא חייב לעמוד בתור מאגר מטא נתונים בגודל הנדרש.
  2. לאחר מכן הוא צריך למלא את מאגר המטא נתונים, ולהציב אותו בתור המסגרת באמצעות enqueue_frame. המסגרת לוקחת בעלות על המסגרת.
  3. במקרה של שגיאה, בקשה לשטוף את הצינור או כיבוי, על ההתקן להחזיר את כל הפריימים שהושפעו ממקומם למסגרת על ידי קריאת cancel_frame.

הגדרה בשורה 263 של הקובץ camera2.h .

תיעוד שטח

int(* cancel_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)

החזר מאגר מטא נתונים מתור למסגרת לשימוש חוזר; אל תסמן אותו כמילוי. השתמש כאשר נתקלים בשגיאות, או ניקוי תור הבקשות הפנימי.

הגדרה בשורה 278 של קובץ camera2.h .

int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer)

קבל מאגר מטא נתונים ריק למילוי מהמסגרת. במאגר המטא-נתונים החדש יהיה מקום לערכים מספר ערכי מטא-נתונים, בתוספת אחסון נוסף בשווי data_bytes. יש להחזיר את המסגרות המותרות כאן למסגרת עם cancel_frame או enqueue_frame.

הגדרה בשורה 270 של קובץ camera2.h .

int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)

הצב מסגרת מטא נתונים שהושלמה בתור הפלט של המסגרת.

הגדרה בשורה 284 של הקובץ camera2.h .


התיעוד עבור מבנה זה נוצר מהקובץ הבא:
  • hardware/libhardware/include/hardware/ camera2.h