_EGL_PLATFORM_ANDROID,
_EGL_PLATFORM_HAIKU,
_EGL_PLATFORM_SURFACELESS,
+ _EGL_PLATFORM_DEVICE,
_EGL_NUM_PLATFORMS,
_EGL_INVALID_PLATFORM = -1
EGLBoolean WL_create_wayland_buffer_from_image;
};
-
struct _egl_display
{
/* used to link displays */
void *PlatformDisplay; /**< A pointer to the platform display */
_EGLDevice *Device; /**< Device backing the display */
- _EGLDriver *Driver; /**< Matched driver of the display */
+ const _EGLDriver *Driver; /**< Matched driver of the display */
EGLBoolean Initialized; /**< True if the display is initialized */
/* options that affect how the driver initializes the display */
struct {
EGLBoolean ForceSoftware; /**< Use software path only */
- void *Platform; /**< Platform-specific options */
+ EGLAttrib *Attribs; /**< Platform-specific options */
+ int fd; /**< plaform device specific, local fd */
} Options;
/* these fields are set by the driver during init */
extern _EGLDisplay *
-_eglFindDisplay(_EGLPlatformType plat, void *plat_dpy);
+_eglFindDisplay(_EGLPlatformType plat, void *plat_dpy, const EGLAttrib *attr);
extern void
-_eglReleaseDisplayResources(_EGLDriver *drv, _EGLDisplay *disp);
+_eglReleaseDisplayResources(_EGLDisplay *disp);
extern void
const EGLAttrib *attrib_list);
#endif
-#ifdef HAVE_SURFACELESS_PLATFORM
_EGLDisplay*
_eglGetSurfacelessDisplay(void *native_display,
const EGLAttrib *attrib_list);
+
+#ifdef HAVE_ANDROID_PLATFORM
+_EGLDisplay*
+_eglGetAndroidDisplay(void *native_display,
+ const EGLAttrib *attrib_list);
#endif
+_EGLDisplay*
+_eglGetDeviceDisplay(void *native_display,
+ const EGLAttrib *attrib_list);
+
#ifdef __cplusplus
}
#endif