Referensi Struct hw_module_t

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: