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 <qwaylandglcontext_p.h>
Public Member Functions | |
QWaylandGLContext (EGLDisplay eglDisplay, QWaylandDisplay *display, const QSurfaceFormat &format, QPlatformOpenGLContext *share) | |
~QWaylandGLContext () | |
void | swapBuffers (QPlatformSurface *surface) override |
Reimplement in subclass to native swap buffers calls. | |
bool | makeCurrent (QPlatformSurface *surface) override |
void | doneCurrent () override |
void | beginFrame () override |
Called when the RHI begins rendering a new frame in the context. | |
void | endFrame () override |
Called when the RHI ends rendering a in the context. | |
GLuint | defaultFramebufferObject (QPlatformSurface *surface) const override |
Reimplement in subclass if your platform uses framebuffer objects for surfaces. | |
QFunctionPointer | getProcAddress (const char *procName) override |
Reimplement in subclass to allow dynamic querying of OpenGL symbols. | |
Public Member Functions inherited from QEGLPlatformContext | |
QEGLPlatformContext (const QSurfaceFormat &format, QPlatformOpenGLContext *share, EGLDisplay display, EGLConfig *config=nullptr, Flags flags={ }) | |
~QEGLPlatformContext () | |
void | initialize () override |
Called after a new instance is constructed. | |
QSurfaceFormat | format () const override |
bool | isSharing () const override |
bool | isValid () const override |
EGLContext | nativeContext () const override |
EGLConfig | config () const override |
EGLDisplay | display () const override |
virtual void | invalidateContext () override |
EGLContext | eglContext () const |
EGLDisplay | eglDisplay () const |
EGLConfig | eglConfig () const |
Public Member Functions inherited from QPlatformOpenGLContext | |
QPlatformOpenGLContext () | |
virtual | ~QPlatformOpenGLContext () |
QOpenGLContext * | context () const |
Protected Member Functions | |
EGLSurface | eglSurfaceForPlatformSurface (QPlatformSurface *surface) override |
EGLSurface | createTemporaryOffscreenSurface () override |
void | destroyTemporaryOffscreenSurface (EGLSurface surface) override |
Protected Member Functions inherited from QEGLPlatformContext | |
QEGLPlatformContext () | |
virtual void | runGLChecks () |
Additional Inherited Members | |
Public Types inherited from QEGLPlatformContext | |
enum | Flag { NoSurfaceless = 0x01 } |
Static Public Member Functions inherited from QEGLPlatformContext | |
template<typename T > | |
static QOpenGLContext * | createFrom (EGLContext context, EGLDisplay contextDisplay, EGLDisplay platformDisplay, QOpenGLContext *shareContext) |
Static Public Member Functions inherited from QPlatformOpenGLContext | |
static bool | parseOpenGLVersion (const QByteArray &versionString, int &major, int &minor) |
Definition at line 34 of file qwaylandglcontext_p.h.
QtWaylandClient::QWaylandGLContext::QWaylandGLContext | ( | EGLDisplay | eglDisplay, |
QWaylandDisplay * | display, | ||
const QSurfaceFormat & | format, | ||
QPlatformOpenGLContext * | share ) |
Definition at line 194 of file qwaylandglcontext.cpp.
References QObject::connect(), QtWaylandClient::QWaylandDisplay::connected(), QEGLPlatformContext::eglConfig(), QEGLPlatformContext::eglContext(), QEGLPlatformContext::eglDisplay(), QEGLPlatformContext::format(), QEGLPlatformContext::invalidateContext(), ok, QSurfaceFormat::OpenGL, QSurfaceFormat::OpenVG, qEnvironmentVariableIntValue(), qWarning, and QSurfaceFormat::renderableType().
QtWaylandClient::QWaylandGLContext::~QWaylandGLContext | ( | ) |
Definition at line 264 of file qwaylandglcontext.cpp.
References QObject::disconnect(), and QEGLPlatformContext::eglDisplay().
|
overridevirtual |
Called when the RHI begins rendering a new frame in the context.
Will always be paired with a call to \l endFrame().
Reimplemented from QPlatformOpenGLContext.
Definition at line 273 of file qwaylandglcontext.cpp.
References QtWaylandClient::QWaylandWindow::beginFrame(), and Q_ASSERT.
|
overrideprotectedvirtual |
Reimplemented from QEGLPlatformContext.
Definition at line 242 of file qwaylandglcontext.cpp.
References QtWaylandClient::QWaylandDisplay::createSurface(), QEGLPlatformContext::eglConfig(), QEGLPlatformContext::eglDisplay(), and EGLSurface().
|
overridevirtual |
Reimplement in subclass if your platform uses framebuffer objects for surfaces.
The default implementation returns 0.
Reimplemented from QPlatformOpenGLContext.
Definition at line 380 of file qwaylandglcontext.cpp.
|
overrideprotectedvirtual |
Reimplemented from QEGLPlatformContext.
Definition at line 255 of file qwaylandglcontext.cpp.
References QEGLPlatformContext::eglDisplay().
|
overridevirtual |
Reimplemented from QEGLPlatformContext.
Definition at line 335 of file qwaylandglcontext.cpp.
References QEGLPlatformContext::eglDisplay().
|
overrideprotectedvirtual |
Implements QEGLPlatformContext.
Definition at line 393 of file qwaylandglcontext.cpp.
|
overridevirtual |
Called when the RHI ends rendering a in the context.
Is always preceded by a call to \l beginFrame().
Reimplemented from QPlatformOpenGLContext.
Definition at line 280 of file qwaylandglcontext.cpp.
References QtWaylandClient::QWaylandWindow::endFrame(), and Q_ASSERT.
|
overridevirtual |
Reimplement in subclass to allow dynamic querying of OpenGL symbols.
As opposed to e.g. the wglGetProcAddress function on Windows, Qt expects this methods to be able to return valid function pointers even for standard OpenGL symbols.
Reimplemented from QEGLPlatformContext.
Definition at line 385 of file qwaylandglcontext.cpp.
|
overridevirtual |
Reimplemented from QEGLPlatformContext.
Definition at line 287 of file qwaylandglcontext.cpp.
References QtWaylandClient::QWaylandEglWindow::bindContentFBO(), QPlatformOpenGLContext::context(), QEGLPlatformContext::eglContext(), QEGLPlatformContext::eglDisplay(), QtWaylandClient::QWaylandEglWindow::eglSurface(), EGLSurface(), QtWaylandClient::QWaylandWindow::isExposed(), QEGLPlatformContext::isValid(), QtWaylandClient::QWaylandEglWindow::needToUpdateContentFBO(), qWarning, QtWaylandClient::QWaylandWindow::setCanResize(), QOpenGLContextPrivate::setCurrentContext(), and QtWaylandClient::QWaylandEglWindow::updateSurface().
|
overridevirtual |
Reimplement in subclass to native swap buffers calls.
The implementation must support being called in a thread different than the gui-thread.
Reimplemented from QEGLPlatformContext.
Definition at line 340 of file qwaylandglcontext.cpp.
References QtWaylandClient::DecorationsBlitter::blit(), QEGLPlatformContext::eglDisplay(), EGLDisplay(), EGLSurface(), QEGLPlatformContext::format(), qCWarning, QSurfaceFormat::swapInterval(), and window().