Tham chiếu cấu trúc hw_module_t
#include < hardware.h >
Trường dữ liệu | |
uint32_t | nhãn |
uint16_t | module_api_version |
uint16_t | hal_api_version |
const char * | Tôi |
const char * | Tên |
const char * | tác giả |
struct hw_module_methods_t * | phương pháp |
void * | 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 ở dòng 86 của tệp tin Hardware.h .
Tài liệu thực địa
const char * tác giả |
Tác giả / chủ sở hữu / người triển khai mô-đun
Định nghĩa tại dòng 139 của tệp tin Hardware.h .
void * dso |
mô-đun của dso
Định nghĩa ở dòng 145 của tệp tin Hardware.h .
uint16_t hal_api_version |
Các định nghĩa version_major / version_minor được cung cấp tại đây để tương thích mã nguồn tạm thời. Chúng sẽ bị loại bỏ trong phiên bản tiếp theo. TẤT CẢ máy khách 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 có nghĩa là để phiên bản các cấu trúc và định nghĩa hw_module_t , hw_module_methods_t , và hw_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 tệp tin Hardware.h .
const char * id |
Định danh của mô-đun
Định nghĩa ở dòng 133 của tệp tin Hardware.h .
phương thức struct hw_module_methods_t * |
Phương pháp mô-đun
Định nghĩa tại dòng 142 của tập tin 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à âm thanh sở hữu và quản lý trường này. Người sử dụng mô-đun phải diễn giải trường phiên bản để quyết định có vận hành lẫn nhau với việc triển khai mô-đun được cung cấp hay không. Ví dụ: SurfaceFlinger có 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 âm thanh và AudioFlinger phải biết cách làm tương tự đối với API mô-đun âm thanh.
Phiên bản API mô-đun nên bao gồm một thành phần chính và một thành phần phụ. Ví dụ: phiên bản 1.0 có thể được biểu thị là 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ị một 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 tệp tin Hardware.h .
const char * tên |
Tên của mô-đun này
Định nghĩa tại dòng 136 của tệp tin Hardware.h .
uint32_t dành riêng [32-7] |
padding đến 128 byte, được dành riêng để sử dụng trong tương lai
Định nghĩa tại dòng 151 của tệp tin Hardware.h .
thẻ uint32_t |
thẻ phải được khởi tạo thành HARDWARE_MODULE_TAG
Định nghĩa ở dòng 88 của tệp tin 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 / phần cứng.h