diff options
-rw-r--r-- | include/wlr/render/egl.h | 16 | ||||
-rw-r--r-- | render/egl.c | 8 |
2 files changed, 24 insertions, 0 deletions
diff --git a/include/wlr/render/egl.h b/include/wlr/render/egl.h index 81d4dfa4..06222237 100644 --- a/include/wlr/render/egl.h +++ b/include/wlr/render/egl.h @@ -71,6 +71,22 @@ struct wlr_egl *wlr_egl_create_with_context(EGLDisplay display, EGLContext context); /** + * Get the EGL display used by the struct wlr_egl. + * + * This is typically used by compositors which need to perform custom OpenGL + * operations. + */ +EGLDisplay wlr_egl_get_display(struct wlr_egl *egl); + +/** + * Get the EGL context used by the struct wlr_egl. + * + * This is typically used by compositors which need to perform custom OpenGL + * operations. + */ +EGLContext wlr_egl_get_context(struct wlr_egl *egl); + +/** * Make the EGL context current. * * Callers are expected to clear the current context when they are done by diff --git a/render/egl.c b/render/egl.c index 81ce3b26..dfba8edd 100644 --- a/render/egl.c +++ b/render/egl.c @@ -583,6 +583,14 @@ void wlr_egl_destroy(struct wlr_egl *egl) { free(egl); } +EGLDisplay wlr_egl_get_display(struct wlr_egl *egl) { + return egl->display; +} + +EGLContext wlr_egl_get_context(struct wlr_egl *egl) { + return egl->context; +} + bool wlr_egl_destroy_image(struct wlr_egl *egl, EGLImage image) { if (!egl->exts.KHR_image_base) { return false; |