ข้อมูลอ้างอิงเกี่ยวกับโครงสร้าง hw_device_t
#include <
hardware.h
>
ฟิลด์ข้อมูล |
|
uint32_t | แท็ก |
uint32_t | version |
struct hw_module_t * | module |
uint32_t | reserved [12] |
int(* | close )(struct hw_device_t *device) |
คำอธิบายโดยละเอียด
โครงสร้างข้อมูลอุปกรณ์ทุกรายการต้องขึ้นต้นด้วย hw_device_t ตามด้วยเมธอดและแอตทริบิวต์สาธารณะเฉพาะโมดูล
คําจํากัดความที่บรรทัด 167 ของไฟล์ hardware.h .
เอกสารประกอบในสนาม
int(* close)(struct hw_device_t *device) |
ปิดอุปกรณ์นี้
คําจํากัดความที่บรรทัด 200 ของไฟล์ hardware.h .
struct hw_module_t * module |
การอ้างอิงถึงโมดูลที่อุปกรณ์นี้อยู่
คําจํากัดความที่บรรทัด 190 ของไฟล์ hardware.h .
uint32_t reserved[12] |
ระยะห่างที่สงวนไว้สำหรับการใช้งานในอนาคต
คําจํากัดความที่บรรทัด 196 ของไฟล์ hardware.h .
แท็ก uint32_t |
ต้องเริ่มต้นค่าแท็กเป็น HARDWARE_DEVICE_TAG
คําจํากัดความที่บรรทัด 169 ของไฟล์ hardware.h .
เวอร์ชัน uint32_t |
เวอร์ชันของ Device API สำหรับโมดูลที่เฉพาะเจาะจง ผู้ใช้โมดูลที่ดึงข้อมูลจะใช้ค่านี้เพื่อจัดการการติดตั้งใช้งานอุปกรณ์ต่างๆ
ผู้ใช้โมดูลมีหน้าที่ตรวจสอบช่อง module_api_version และเวอร์ชันอุปกรณ์เพื่อให้มั่นใจว่าผู้ใช้สามารถสื่อสารกับการติดตั้งใช้งานโมดูลที่เฉพาะเจาะจงได้
โมดูลเดียวรองรับอุปกรณ์หลายเครื่องที่มีเวอร์ชันต่างกันได้ ซึ่งอาจมีประโยชน์เมื่ออินเทอร์เฟซของอุปกรณ์มีการเปลี่ยนแปลงในลักษณะที่เข้ากันไม่ได้ แต่ยังคงต้องรองรับการติดตั้งใช้งานเวอร์ชันเก่าไปพร้อมๆ กัน ตัวอย่างหนึ่งคือ Camera 2.0 API
ผู้ใช้โมดูลจะตีความช่องนี้ และอินเทอร์เฟซ HAL จะไม่สนใจ
คําจํากัดความที่บรรทัด 187 ของไฟล์ hardware.h .
เอกสารประกอบสำหรับโครงสร้างนี้สร้างขึ้นจากไฟล์ต่อไปนี้
- hardware/libhardware/include/hardware/ hardware.h