Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

hw_module_t Yapı Referansı

hw_module_t Yapı Referansı

#include < hardware.h >

Veri alanları

uint32_t etiket
uint16_t modül_api_versiyonu
uint16_t hal_api_version
karakter karakteri * İD
karakter karakteri * isim
karakter karakteri * yazar
struct hw_module_methods_t * yöntemler
geçersiz * dso
uint32_t saklıdır [32-7]

Detaylı Açıklama

Her donanım modülünün HAL_MODULE_INFO_SYM adında bir veri yapısı olmalıdır ve bu veri yapısının alanları hw_module_t ile başlayıp modüle özel bilgiler gelmelidir.

Hardware.h dosyasının 86. satırındaki tanım.

Saha Dokümantasyonu

const karakter* yazar

Modülün yazarı/sahibi/uygulayıcısı

Hardware.h dosyasının 139. satırındaki tanım.

geçersiz* dso

modülün dso'su

Hardware.h dosyasının 145. satırındaki tanım.

uint16_t hal_api_version

version_major/version_minor tanımları, geçici kaynak kodu uyumluluğu için burada sağlanır. Bir sonraki sürümde kaldırılacaklar. TÜM istemciler yeni sürüm biçimine dönüştürmelidir. HAL modülü arabiriminin API sürümü. Bu, hw_module_t , hw_module_methods_t ve hw_device_t yapılarını ve tanımlarını sürümlendirmek içindir.

HAL arabirimi bu alanın sahibidir. Modül kullanıcıları/uygulamaları, sürüm bilgisi için bu değere GÜVENMEMELİDİR.

Şu anda, 0 tek geçerli değerdir.

Hardware.h dosyasının 129. satırındaki tanım.

const karakter* kimliği

Modül tanımlayıcısı

Hardware.h dosyasının 133. satırındaki tanım.

struct hw_module_methods_t * yöntemler

Modül yöntemleri

Hardware.h dosyasının 142 satırındaki tanım.

uint16_t module_api_version

Uygulanan modülün API sürümü. Bir 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 alana sahip olur ve yönetir. Modül kullanıcısı, sağlanan modül uygulamasıyla birlikte çalışıp çalışmamaya karar vermek için sürüm alanını yorumlamalıdır. Örneğin, SurfaceFlinger, gralloc-module API'sinin farklı sürümlerinin nasıl yönetileceğini bildiğinden emin olmaktan sorumludur ve AudioFlinger, audio-module API için aynısını nasıl yapacağını bilmelidir.

Modül API sürümü, bir ana ve bir küçük bileşen içermelidir. Örneğin, sürüm 1.0, 0x0100 olarak temsil edilebilir. Bu biçim, 0x0100-0x01ff sürümlerinin tümünün API uyumlu olduğunu ima eder.

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ümleri olan modülleri reddedebilecek bir hw_get_module_version() (veya eşdeğeri) işlevi ortaya çıkaracaktır.

Hardware.h dosyasının 111. satırındaki tanım.

const karakter* adı

Bu modülün adı

Hardware.h dosyasının 136. satırındaki tanım.

uint32_t ayrılmış[32-7]

128 bayta doldurma, ileride kullanılmak üzere ayrılmış

Hardware.h dosyasının 151 satırındaki tanım.

uint32_t etiketi

etiket, HARDWARE_MODULE_TAG olarak başlatılmalıdır

Hardware.h dosyasının 88. satırındaki tanım.


Bu yapı için belgeler aşağıdaki dosyadan oluşturulmuştur:
  • donanım/libdonanım/içerme/ donanım /donanım.h