summaryrefslogtreecommitdiff
path: root/kmscube/cube-egl.h
diff options
context:
space:
mode:
authorKaido Kert <kaidokert@gmail.com>2024-11-29 04:47:25 +0000
committerTomi Valkeinen <tomi.valkeinen@ideasonboard.com>2024-12-09 12:35:38 +0200
commitaaab406251540429522c5ef7808ee049c65a06d2 (patch)
tree65b6681f3dab077e5341d9cb386f2e71220d12af /kmscube/cube-egl.h
parent6cf6e88715ac034f568603bce9a1b8f4a30c12ce (diff)
Implement native visual matching
Implement matching GBM buffer format to EGL NATIVE_VISUAL_ID. eglChooseConfig cannot match on NATIVE_VISUAL_ID, but GBM/EGL requires matching formats. Similar logic is implemented in kmscube code in match_config_to_visual. X11, Wayland and Null cube demos remain unchanged. Tested on Raspi-4 and VirtualBox/Ubuntu
Diffstat (limited to 'kmscube/cube-egl.h')
-rw-r--r--kmscube/cube-egl.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/kmscube/cube-egl.h b/kmscube/cube-egl.h
index f492d07..73e3ab1 100644
--- a/kmscube/cube-egl.h
+++ b/kmscube/cube-egl.h
@@ -6,16 +6,19 @@ class EglState
{
public:
EglState(void* native_display);
+ EglState(void* native_display, EGLint native_visual_id);
~EglState();
EGLDisplay display() const { return m_display; }
EGLConfig config() const { return m_config; }
EGLContext context() const { return m_context; }
+ EGLint native_visual_id() const { return m_native_visual_id; }
private:
EGLDisplay m_display;
EGLConfig m_config;
EGLContext m_context;
+ EGLint m_native_visual_id;
};
class EglSurface