aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/render/gles2.h11
-rw-r--r--include/wlr/render/egl.h23
2 files changed, 29 insertions, 5 deletions
diff --git a/include/render/gles2.h b/include/render/gles2.h
index 7a629d69..817ec62d 100644
--- a/include/render/gles2.h
+++ b/include/render/gles2.h
@@ -14,6 +14,16 @@
#include <wlr/render/wlr_texture.h>
#include <wlr/util/log.h>
+struct wlr_gles2_procs {
+ PFNGLEGLIMAGETARGETTEXTURE2DOESPROC glEGLImageTargetTexture2DOES;
+ PFNGLDEBUGMESSAGECALLBACKKHRPROC glDebugMessageCallbackKHR;
+ PFNGLDEBUGMESSAGECONTROLKHRPROC glDebugMessageControlKHR;
+ PFNGLPOPDEBUGGROUPKHRPROC glPopDebugGroupKHR;
+ PFNGLPUSHDEBUGGROUPKHRPROC glPushDebugGroupKHR;
+};
+
+extern struct wlr_gles2_procs gles2_procs;
+
struct wlr_gles2_pixel_format {
enum wl_shm_format wl_format;
GLint gl_format, gl_type;
@@ -33,7 +43,6 @@ struct wlr_gles2_renderer {
struct wlr_renderer wlr_renderer;
struct wlr_egl *egl;
- const char *exts_str;
struct {
bool read_format_bgra_ext;
diff --git a/include/wlr/render/egl.h b/include/wlr/render/egl.h
index efded0b6..2853f8ed 100644
--- a/include/wlr/render/egl.h
+++ b/include/wlr/render/egl.h
@@ -22,6 +22,8 @@
#include <EGL/egl.h>
#include <EGL/eglext.h>
+// TODO: remove eglmesaext.h
+#include <EGL/eglmesaext.h>
#include <pixman.h>
#include <stdbool.h>
#include <wayland-server-core.h>
@@ -34,8 +36,6 @@ struct wlr_egl {
EGLConfig config;
EGLContext context;
- const char *exts_str;
-
struct {
bool bind_wayland_display_wl;
bool buffer_age_ext;
@@ -43,10 +43,25 @@ struct wlr_egl {
bool image_dma_buf_export_mesa;
bool image_dmabuf_import_ext;
bool image_dmabuf_import_modifiers_ext;
- bool swap_buffers_with_damage_ext;
- bool swap_buffers_with_damage_khr;
+ bool swap_buffers_with_damage;
} exts;
+ struct {
+ PFNEGLGETPLATFORMDISPLAYEXTPROC eglGetPlatformDisplayEXT;
+ PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC eglCreatePlatformWindowSurfaceEXT;
+ PFNEGLCREATEIMAGEKHRPROC eglCreateImageKHR;
+ PFNEGLDESTROYIMAGEKHRPROC eglDestroyImageKHR;
+ PFNEGLQUERYWAYLANDBUFFERWL eglQueryWaylandBufferWL;
+ PFNEGLBINDWAYLANDDISPLAYWL eglBindWaylandDisplayWL;
+ PFNEGLUNBINDWAYLANDDISPLAYWL eglUnbindWaylandDisplayWL;
+ PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC eglSwapBuffersWithDamage; // KHR or EXT
+ PFNEGLQUERYDMABUFFORMATSEXTPROC eglQueryDmaBufFormatsEXT;
+ PFNEGLQUERYDMABUFMODIFIERSEXTPROC eglQueryDmaBufModifiersEXT;
+ PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC eglExportDMABUFImageQueryMESA;
+ PFNEGLEXPORTDMABUFIMAGEMESAPROC eglExportDMABUFImageMESA;
+ PFNEGLDEBUGMESSAGECONTROLKHRPROC eglDebugMessageControlKHR;
+ } procs;
+
struct wl_display *wl_display;
struct wlr_drm_format_set dmabuf_formats;