Android HAL 层,三个重要的结构体的源码~
最近在學習android HAL 層 ~ 離不開這三個數據結構~~先貼出來
?
?
typedef struct hw_module_t {
??? /** tag must be initialized to HARDWARE_MODULE_TAG */
??? uint32_t tag;
??? /** major version number for the module */
??? uint16_t version_major;
??? /** minor version number of the module */
??? uint16_t version_minor;
??? /** Identifier of module */
??? const char *id;
??? /** Name of this module */
??? const char *name;
??? /** Author/owner/implementor of the module */
??? const char *author;
??? /** Modules methods */
??? struct hw_module_methods_t* methods;
??? /** module's dso */
??? void* dso;
??? /** padding to 128 bytes, reserved for future use */
??? uint32_t reserved[32-7];
} hw_module_t;
typedef struct hw_module_methods_t {
??? /** Open a specific device */
??? int (*open)(const struct hw_module_t* module, const char* id,
??????????? struct hw_device_t** device);
} hw_module_methods_t;
/**
?* Every device data structure must begin with hw_device_t
?* followed by module specific public methods and attributes.
?*/
typedef struct hw_device_t {
??? /** tag must be initialized to HARDWARE_DEVICE_TAG */
??? uint32_t tag;
??? /** version number for hw_device_t */
??? uint32_t version;
??? /** reference to the module this device belongs to */
??? struct hw_module_t* module;
??? /** padding reserved for future use */
??? uint32_t reserved[12];
??? /** Close this device */
??? int (*close)(struct hw_device_t* device);
} hw_device_t;
轉載于:https://www.cnblogs.com/six-string/archive/2012/05/29/2524213.html
總結
以上是生活随笔為你收集整理的Android HAL 层,三个重要的结构体的源码~的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Memcached入门指南
- 下一篇: 第四种行转列