Referensi Struct hw_module_t
#include <
hardware.h
>
Kolom Data |
|
uint32_t | tag |
uint16_t | module_api_version |
uint16_t | hal_api_version |
const char * | id |
const char * | name |
const char * | author |
struct hw_module_methods_t * | metode |
void * | dso |
uint32_t | reserved [32-7] |
Deskripsi Mendetail
Setiap modul hardware harus memiliki struktur data bernama HAL_MODULE_INFO_SYM dan kolom struktur data ini harus dimulai dengan hw_module_t diikuti dengan informasi khusus modul.
Definisi di baris 86 file hardware.h .
Dokumentasi Bidang
const char* author |
Penulis/pemilik/penerapkan modul
Definisi pada baris 139 dari file hardware.h .
void* dso |
dso modul
Definisi di baris 145 dari file hardware.h .
uint16_t hal_api_version |
Penentuan version_major/version_minor disediakan di sini untuk kompatibilitas kode sumber sementara. Fitur ini akan dihapus dalam versi berikutnya. SEMUA klien harus dikonversi ke format versi baru. Versi API antarmuka modul HAL. Hal ini dimaksudkan untuk membuat versi hw_module_t , hw_module_methods_t , dan hw_device_t struktur dan definisi.
Antarmuka HAL memiliki kolom ini. Pengguna/implementasi modul TIDAK boleh mengandalkan nilai ini untuk informasi versi.
Saat ini, 0 adalah satu-satunya nilai yang valid.
Definisi di baris 129 dari file hardware.h .
const char* id |
ID modul
Definisi di baris 133 dari file hardware.h .
Metode struct hw_module_methods_t * |
Metode modul
Definisi di baris 142 dari file hardware.h .
uint16_t module_api_version |
Versi API modul yang diterapkan. Pemilik modul bertanggung jawab untuk mengupdate versi saat antarmuka modul telah berubah.
Modul turunan seperti gralloc dan audio memiliki dan mengelola kolom ini. Pengguna modul harus menafsirkan kolom versi untuk memutuskan apakah akan berinteraksi dengan implementasi modul yang disediakan atau tidak. Misalnya, SurfaceFlinger bertanggung jawab untuk memastikan bahwa SurfaceFlinger mengetahui cara mengelola berbagai versi API modul gralloc, dan AudioFlinger harus mengetahui cara melakukan hal yang sama untuk API modul audio.
Versi API modul harus menyertakan komponen utama dan minor. Misalnya, versi 1.0 dapat direpresentasikan sebagai 0x0100. Format ini menyiratkan bahwa versi 0x0100-0x01ff semuanya kompatibel dengan API.
Di masa mendatang, libhardware akan mengekspos fungsi hw_get_module_version() (atau yang setara) yang akan menggunakan versi minimum/maksimum yang didukung sebagai argumen dan akan dapat menolak modul dengan versi di luar rentang yang disediakan.
Definisi di baris 111 dari file hardware.h .
const char* name |
Nama modul ini
Definisi di baris 136 dari file hardware.h .
uint32_t reserved[32-7] |
padding hingga 128 byte, dicadangkan untuk penggunaan pada masa mendatang
Definisi di baris 151 dari file hardware.h .
Tag uint32_t |
tag harus diinisialisasi ke HARDWARE_MODULE_TAG
Definisi di baris 88 dari file hardware.h .
Dokumentasi untuk struct ini dibuat dari file berikut:
- hardware/libhardware/include/hardware/ hardware.h