Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include "waylandeglclientbufferintegration_p.h"
#include <QtWaylandCompositor/QWaylandCompositor>
#include <QtWaylandCompositor/private/qwltextureorphanage_p.h>
#include <qpa/qplatformnativeinterface.h>
#include <QtOpenGL/QOpenGLTexture>
#include <QtGui/QGuiApplication>
#include <QtGui/QOpenGLContext>
#include <QtGui/QOffscreenSurface>
#include <qpa/qplatformscreen.h>
#include <QtGui/QWindow>
#include <QtCore/QPointer>
#include <QDebug>
#include <QMutex>
#include <QMutexLocker>
#include <QVarLengthArray>
#include <QtCore/private/qcore_unix_p.h>
#include <QtGui/private/qeglstreamconvenience_p.h>
Go to the source code of this file.
Classes | |
struct | BufferState |
class | WaylandEglClientBufferIntegrationPrivate |
Macros | |
#define | GL_TEXTURE_EXTERNAL_OES 0x8D65 |
#define | EGL_WAYLAND_BUFFER_WL 0x31D5 |
#define | EGL_WAYLAND_EGLSTREAM_WL 0x334B |
#define | EGL_WAYLAND_PLANE_WL 0x31D6 |
#define | EGL_WAYLAND_Y_INVERTED_WL 0x31DB |
#define | EGL_TEXTURE_RGB 0x305D |
#define | EGL_TEXTURE_RGBA 0x305E |
#define | EGL_TEXTURE_EXTERNAL_WL 0x31DA |
#define | EGL_TEXTURE_Y_U_V_WL 0x31D7 |
#define | EGL_TEXTURE_Y_UV_WL 0x31D8 |
#define | EGL_TEXTURE_Y_XUXV_WL 0x31D9 |
#define | EGL_PLATFORM_X11_KHR 0x31D5 |
#define | MYERRCODE(x) case x: return #x; |
Typedefs | |
typedef struct wl_resource * | buffer |
typedef struct wl_resource EGLint | attribute |
typedef struct wl_resource EGLint EGLint * | value |
typedef struct wl_display * | display |
typedef EGLContext | ctx |
typedef EGLContext EGLenum | target |
typedef EGLContext EGLenum EGLClientBuffer const EGLint * | attrib_list |
typedef EGLImageKHR | image |
Functions | |
typedef | EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWL_compat)(EGLDisplay dpy |
typedef | EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC)(EGLDisplay dpy |
typedef | void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC)(GLenum target |
static QT_BEGIN_NAMESPACE const char * | egl_error_string (EGLint code) |
static QWaylandBufferRef::BufferFormatEgl | formatFromEglFormat (EGLint format) |
static QOpenGLTexture::TextureFormat | openGLFormatFromEglFormat (EGLint format) |
#define EGL_PLATFORM_X11_KHR 0x31D5 |
Definition at line 69 of file waylandeglclientbufferintegration.cpp.
#define EGL_TEXTURE_EXTERNAL_WL 0x31DA |
Definition at line 53 of file waylandeglclientbufferintegration.cpp.
Referenced by formatFromEglFormat(), WaylandEglClientBufferIntegrationPrivate::initEglStream(), WaylandEglClientBufferIntegrationPrivate::initEglTexture(), and WaylandEglClientBuffer::toOpenGlTexture().
#define EGL_TEXTURE_RGB 0x305D |
Definition at line 45 of file waylandeglclientbufferintegration.cpp.
Referenced by formatFromEglFormat(), WaylandEglClientBufferIntegrationPrivate::initEglTexture(), and openGLFormatFromEglFormat().
#define EGL_TEXTURE_RGBA 0x305E |
Definition at line 49 of file waylandeglclientbufferintegration.cpp.
Referenced by formatFromEglFormat(), WaylandEglClientBufferIntegrationPrivate::initEglTexture(), and openGLFormatFromEglFormat().
#define EGL_TEXTURE_Y_U_V_WL 0x31D7 |
Definition at line 57 of file waylandeglclientbufferintegration.cpp.
Referenced by formatFromEglFormat(), and WaylandEglClientBufferIntegrationPrivate::initEglTexture().
#define EGL_TEXTURE_Y_UV_WL 0x31D8 |
Definition at line 61 of file waylandeglclientbufferintegration.cpp.
Referenced by formatFromEglFormat(), and WaylandEglClientBufferIntegrationPrivate::initEglTexture().
#define EGL_TEXTURE_Y_XUXV_WL 0x31D9 |
Definition at line 65 of file waylandeglclientbufferintegration.cpp.
Referenced by formatFromEglFormat(), and WaylandEglClientBufferIntegrationPrivate::initEglTexture().
#define EGL_WAYLAND_BUFFER_WL 0x31D5 |
Definition at line 29 of file waylandeglclientbufferintegration.cpp.
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglStream(), WaylandEglClientBufferIntegrationPrivate::initEglTexture(), and WaylandEglClientBuffer::lockNativeBuffer().
#define EGL_WAYLAND_EGLSTREAM_WL 0x334B |
Definition at line 33 of file waylandeglclientbufferintegration.cpp.
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglStream().
#define EGL_WAYLAND_PLANE_WL 0x31D6 |
Definition at line 37 of file waylandeglclientbufferintegration.cpp.
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglTexture().
#define EGL_WAYLAND_Y_INVERTED_WL 0x31DB |
Definition at line 41 of file waylandeglclientbufferintegration.cpp.
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglTexture().
#define GL_TEXTURE_EXTERNAL_OES 0x8D65 |
Definition at line 25 of file waylandeglclientbufferintegration.cpp.
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglStream().
typedef EGLContext EGLenum EGLClientBuffer const EGLint* attrib_list |
Definition at line 81 of file waylandeglclientbufferintegration.cpp.
typedef struct wl_resource EGLint attribute |
Definition at line 73 of file waylandeglclientbufferintegration.cpp.
typedef EGLContext EGLenum EGLClientBuffer buffer |
Definition at line 73 of file waylandeglclientbufferintegration.cpp.
typedef EGLContext ctx |
Definition at line 81 of file waylandeglclientbufferintegration.cpp.
typedef struct wl_display* display |
Definition at line 76 of file waylandeglclientbufferintegration.cpp.
typedef GLeglImageOES image |
Definition at line 82 of file waylandeglclientbufferintegration.cpp.
typedef EGLContext EGLenum target |
Definition at line 81 of file waylandeglclientbufferintegration.cpp.
typedef struct wl_resource EGLint EGLint* value |
Definition at line 73 of file waylandeglclientbufferintegration.cpp.
|
static |
Definition at line 93 of file waylandeglclientbufferintegration.cpp.
References MYERRCODE.
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglStream().
typedef EGLBoolean | ( | EGLAPIENTRYP | PFNEGLQUERYWAYLANDBUFFERWL_compat | ) |
Referenced by WaylandEglClientBufferIntegrationPrivate::initEglTexture().
typedef EGLImageKHR | ( | EGLAPIENTRYP | PFNEGLCREATEIMAGEKHRPROC | ) |
|
static |
Definition at line 554 of file waylandeglclientbufferintegration.cpp.
References QWaylandBufferRef::BufferFormatEgl_EXTERNAL_OES, QWaylandBufferRef::BufferFormatEgl_RGB, QWaylandBufferRef::BufferFormatEgl_RGBA, QWaylandBufferRef::BufferFormatEgl_Y_U_V, QWaylandBufferRef::BufferFormatEgl_Y_UV, QWaylandBufferRef::BufferFormatEgl_Y_XUXV, EGL_TEXTURE_EXTERNAL_WL, EGL_TEXTURE_RGB, EGL_TEXTURE_RGBA, EGL_TEXTURE_Y_U_V_WL, EGL_TEXTURE_Y_UV_WL, and EGL_TEXTURE_Y_XUXV_WL.
Referenced by WaylandEglClientBuffer::bufferFormatEgl().
|
static |
Definition at line 573 of file waylandeglclientbufferintegration.cpp.
References EGL_TEXTURE_RGB, EGL_TEXTURE_RGBA, QOpenGLTexture::NoFormat, QOpenGLTexture::RGBAFormat, and QOpenGLTexture::RGBFormat.
Referenced by WaylandEglClientBuffer::toOpenGlTexture().
typedef void | ( | GL_APIENTRYP | PFNGLEGLIMAGETARGETTEXTURE2DOESPROC | ) |