20typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer,
const EGLint *attrib_list);
53 void initialize(QWaylandDisplay *display)
override;
57 inline EGLImageKHR
eglCreateImageKHR(EGLContext ctx, EGLenum target, EGLClientBuffer buffer,
const EGLint *attrib_list);
62 int32_t width, int32_t height, int32_t stride,
63 int32_t offset, int32_t fourcc_format)
override;
67 const QString &interface, uint32_t version);
70 PFNEGLCREATEIMAGEKHRPROC m_egl_create_image =
nullptr;
71 PFNEGLDESTROYIMAGEKHRPROC m_egl_destroy_image =
nullptr;
72 PFNGLEGLIMAGETARGETTEXTURE2DOESPROC m_gl_egl_image_target_texture =
nullptr;
73 QWaylandDisplay *m_display =
nullptr;
74 EGLDisplay m_egl_display = EGL_NO_DISPLAY;
75 bool m_egl_initialized =
false;
80 if (!m_egl_initialized)
82 if (!m_egl_create_image) {
83 qCWarning(lcQpaWayland) <<
"DmaBufServerBufferIntegration: Trying to use unresolved function eglCreateImageKHR";
84 return EGL_NO_IMAGE_KHR;
86 return m_egl_create_image(m_egl_display, ctx, target, buffer, attrib_list);