hw_module_t Tham chiếu cấu trúc

hw_module_t Tham chiếu cấu trúc

#include < hardware.h >

Trường dữ liệu

uint32_t nhãn
uint16_t module_api_version
uint16_t hal_api_version
const char * nhận dạng
const char * tên
const char * tác giả
cấu trúc hw_module_methods_t * phương pháp
trống * dso
uint32_t dành riêng [32-7]

miêu tả cụ thể

Mọi mô-đun phần cứng phải có cấu trúc dữ liệu có tên HAL_MODULE_INFO_SYM và các trường của cấu trúc dữ liệu này phải bắt đầu bằng hw_module_t , theo sau là thông tin cụ thể của mô-đun.

Định nghĩa tại dòng 86 của file hardware.h .

Tài liệu hiện trường

const char* tác giả

Tác giả/chủ sở hữu/người thực hiện mô-đun

Định nghĩa tại dòng 139 của file hardware.h .

void* dso

dso của mô-đun

Định nghĩa tại dòng 145 của file hardware.h .

uint16_t hal_api_version

Các định nghĩa version_major/version_minor được cung cấp ở đây để tương thích mã nguồn tạm thời. Chúng sẽ bị xóa trong phiên bản tiếp theo. TẤT CẢ khách hàng phải chuyển đổi sang định dạng phiên bản mới. Phiên bản API của giao diện mô-đun HAL. Điều này nhằm phiên bản các cấu trúc và định nghĩa hw_module_t , hw_module_methods_thw_device_t .

Giao diện HAL sở hữu trường này. Người dùng/triển khai mô-đun KHÔNG được dựa vào giá trị này để biết thông tin phiên bản.

Hiện tại, 0 là giá trị hợp lệ duy nhất.

Định nghĩa tại dòng 129 của file hardware.h .

const char* id

Mã định danh mô-đun

Định nghĩa tại dòng 133 của file hardware.h .

struct hw_module_methods_t * phương thức

Phương pháp mô-đun

Định nghĩa tại dòng 142 của file hardware.h .

uint16_t module_api_version

Phiên bản API của mô-đun đã triển khai. Chủ sở hữu mô-đun có trách nhiệm cập nhật phiên bản khi giao diện mô-đun thay đổi.

Các mô-đun dẫn xuất như gralloc và audio sở hữu và quản lý trường này. Người dùng mô-đun phải diễn giải trường phiên bản để quyết định có nên tương tác với việc triển khai mô-đun được cung cấp hay không. Ví dụ: SurfaceFlinger chịu trách nhiệm đảm bảo rằng nó biết cách quản lý các phiên bản khác nhau của API mô-đun gralloc và AudioFlinger phải biết cách thực hiện tương tự đối với API mô-đun âm thanh.

Phiên bản API mô-đun phải bao gồm thành phần chính và thành phần phụ. Ví dụ: phiên bản 1.0 có thể được biểu diễn dưới dạng 0x0100. Định dạng này ngụ ý rằng các phiên bản 0x0100-0x01ff đều tương thích với API.

Trong tương lai, libhardware sẽ hiển thị hàm hw_get_module_version() (hoặc tương đương) sẽ lấy các phiên bản được hỗ trợ tối thiểu/tối đa làm đối số và có thể từ chối các mô-đun có phiên bản nằm ngoài phạm vi được cung cấp.

Định nghĩa tại dòng 111 của file hardware.h .

tên const char*

Tên của mô-đun này

Định nghĩa tại dòng 136 của file hardware.h .

uint32_t dành riêng[32-7]

đệm đến 128 byte, dành riêng để sử dụng trong tương lai

Định nghĩa tại dòng 151 của file hardware.h .

thẻ uint32_t

thẻ phải được khởi tạo thành HARDWARE_MODULE_TAG

Định nghĩa tại dòng 88 của file hardware.h .


Tài liệu cho cấu trúc này được tạo từ tệp sau:
  • phần cứng/libhardware/bao gồm/phần cứng/ hardware.h