hw_module_t Yapı Referansı
#include <
hardware.h
>
Veri Alanları |
|
uint32_t | etiket |
uint16_t | module_api_version |
uint16_t | hal_api_version |
const char * | id |
const char * | ad |
const char * | author |
struct hw_module_methods_t * | yöntemleri |
void * | dso |
uint32_t | reserved [32-7] |
Ayrıntılı Açıklama
Her donanım modülünde HAL_MODULE_INFO_SYM adlı bir veri yapısı olmalıdır ve bu veri yapısının alanları, hw_module_t ile başlamalı ve ardından modüle özgü bilgiler gelmelidir.
Tanımı, hardware.h dosyasının 86 . satırındadır.
Alan Belgeleri
const char* author |
Modülün yazarı/sahibi/uygulayıcısı
Tanım, hardware.h dosyasının 139 satırına eklenmelidir.
void* dso |
modülün dso
Tanımı, hardware.h dosyasının 145. satırı
uint16_t hal_api_version |
Geçici kaynak kodu uyumluluğu için version_major/version_minor tanımları burada sağlanır. Bu özellikler sonraki sürümde kaldırılacaktır. TÜM istemcilerin yeni sürüm biçimine dönüştürülmesi gerekir. HAL modülü arayüzünün API sürümü. Bu, hw_module_t , hw_module_methods_t ve hw_device_t yapılarının ve tanımlarının sürümünü belirtmek içindir.
Bu alanın sahibi HAL arayüzüdür. Modül kullanıcıları/uygulamaları, sürüm bilgileri için bu değere güvenmemelidir.
Şu anda tek geçerli değer 0'dır.
Tanımı, hardware.h dosyasının 129 satırı
const char* id |
Modülün tanımlayıcısı
Tanımı, hardware.h dosyasının 133 satırı
struct hw_module_methods_t * methods |
Modül yöntemleri
Tanımı, hardware.h dosyasının 142. satırı
uint16_t module_api_version |
Uygulanan modülün API sürümü. Modül arayüzü değiştiğinde sürümü güncellemekten modül sahibi sorumludur.
gralloc ve audio gibi türetilmiş modüller bu alanın sahibidir ve bu alanı yönetir. Modül kullanıcısı, sağlanan modül uygulamasıyla birlikte çalışıp çalışmayacağına karar vermek için sürüm alanını yorumlamalıdır. Örneğin, SurfaceFlinger, gralloc-module API'nin farklı sürümlerini nasıl yöneteceğini bilmekten sorumludur ve AudioFlinger da audio-module API için aynısını bilmelidir.
Modül API sürümü, ana ve ikincil bileşen içermelidir. Örneğin, 1.0 sürümü 0x0100 olarak temsil edilebilir. Bu biçim, 0x0100-0x01ff sürümlerinin hepsinin API ile uyumlu olduğunu belirtir.
Gelecekte libhardware, desteklenen minimum/maksimum sürümleri bağımsız değişken olarak alacak ve sağlanan aralığın dışındaki sürümlere sahip modülleri reddedebilecek bir hw_get_module_version() (veya eşdeğeri) işlevi sunacaktır.
Tanım, hardware.h dosyasının 111 satırına eklendi.
const char* name |
Bu modülün adı
Tanımı, hardware.h dosyasının 136 satırı
uint32_t reserved[32-7] |
128 baytlık dolgu, gelecekte kullanılmak üzere ayrılmıştır
Tanımı, hardware.h dosyasının 151. satırı
uint32_t etiketi |
etiketi HARDWARE_MODULE_TAG olarak başlatılmalıdır
Tanım, hardware.h dosyasının 88. satırı sıdır.
Bu yapının dokümanları aşağıdaki dosyadan oluşturulmuştur:
- hardware/libhardware/include/hardware/ hardware.h