Od 27 marca 2025 r. zalecamy używanie android-latest-release
zamiast aosp-main
do kompilowania i wspołtworzenia AOSP. Więcej informacji znajdziesz w artykule o zmianach w AOSP.
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Informacje o strukturze gralloc_module_t
#include <
gralloc.h
>
|
struct
hw_module_t
|
wspólne
|
|
int(*
|
registerBuffer
)(struct
gralloc_module_t
const *module, buffer_handle_t handle)
|
|
int(*
|
unregisterBuffer
)(struct
gralloc_module_t
const *module, buffer_handle_t handle)
|
|
int(*
|
lock
)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr)
|
|
int(*
|
unlock
)(struct
gralloc_module_t
const *module, buffer_handle_t handle)
|
|
int(*
|
perform
)(struct
gralloc_module_t
const *module, int operation,...)
|
|
int(*
|
lock_ycbcr
)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr)
|
|
int(*
|
lockAsync
)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr, int fenceFd)
|
|
int(*
|
unlockAsync
)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int *fenceFd)
|
|
int(*
|
lockAsync_ycbcr
)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr, int fenceFd)
|
|
void *
|
reserved_proc
[3]
|
|
Każdy moduł sprzętowy musi mieć strukturę danych o nazwie HAL_MODULE_INFO_SYM, a pola tej struktury danych muszą zaczynać się od
hw_module_t
po czym następuje informacja o danym module.
Definicja w wierszu
155
pliku
gralloc.h
.
int(* lock)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr)
|
int(* lock_ycbcr)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr)
|
int(* lockAsync)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr, int fenceFd)
|
int(* lockAsync_ycbcr)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr, int fenceFd)
|
int(* registerBuffer)(struct
gralloc_module_t
const *module, buffer_handle_t handle)
|
int(* unlockAsync)(struct
gralloc_module_t
const *module, buffer_handle_t handle, int *fenceFd)
|
int(* unregisterBuffer)(struct
gralloc_module_t
const *module, buffer_handle_t handle)
|
Dokumentacja tego typu danych została wygenerowana z tego pliku:
-
hardware/libhardware/include/hardware/
gralloc.h
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-03-26 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-03-26 UTC."],[],[]]