#include <EGL/egl.h>
#include <EGL/eglext.h>
#include <android/api-level.h>
#include <android/hardware_buffer.h>
#include <android/hardware_buffer_jni.h>
#include <android/surface_control.h>
#include <android/trace.h>
#include <functional>
#include "flutter/fml/logging.h"
#include "flutter/fml/native_library.h"
Go to the source code of this file.
Classes | |
struct | impeller::android::AndroidProc< T > |
struct | impeller::android::ProcTable |
The table of Android procs that are resolved dynamically. More... | |
Namespaces | |
impeller | |
impeller::android | |
Macros | |
#define | EGL_EGLEXT_PROTOTYPES |
#define | FOR_EACH_ANDROID_PROC(INVOKE) |
The Android procs along with the device API level on which these will be available. There is no checking of the actual API level however (because getting the API level is itself only possible on API levels 29 and above). More... | |
#define | DEFINE_PROC(name, api) AndroidProc<decltype(name)> name = {.proc_name = #name}; |
Functions | |
ASurfaceTransaction * | impeller::android::ASurfaceTransaction_fromJava (JNIEnv *env, jobject transaction) |
const ProcTable & | impeller::android::GetProcTable () |
#define DEFINE_PROC | ( | name, | |
api | |||
) | AndroidProc<decltype(name)> name = {.proc_name = #name}; |
Definition at line 122 of file proc_table.h.
#define EGL_EGLEXT_PROTOTYPES |
Definition at line 9 of file proc_table.h.
#define FOR_EACH_ANDROID_PROC | ( | INVOKE | ) |
The Android procs along with the device API level on which these will be available. There is no checking of the actual API level however (because getting the API level is itself only possible on API levels 29 and above).
Take care to explicitly check for the availability of these APIs at runtime before invoking them.
Typically, you'll never have to deal with the proc. table directly. Instead, rely on the handle wrappers (Choreographer
, HardwareBuffer
, etc..).
Definition at line 40 of file proc_table.h.