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>.
|
Static Public Attributes | |
static constexpr GLenum | gl_color_attachment0 = 0x8CE0 |
static constexpr GLenum | gl_depth_attachment = 0x8D00 |
static constexpr GLenum | gl_stencil_attachment = 0x8D20 |
static constexpr GLenum | gl_depth_stencil_attachment = 0x821A |
Static Public Attributes inherited from QWidgetPrivate | |
static QWidgetMapper * | mapper = nullptr |
static QWidgetSet * | allWidgets = nullptr |
static int | instanceCounter = 0 |
static int | maxInstances = 0 |
Definition at line 537 of file qopenglwidget.cpp.
|
default |
|
inlineoverridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 569 of file qopenglwidget.cpp.
References inBackingStorePaint.
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 806 of file qopenglwidget.cpp.
References context, emit, flushPending, QOpenGLContext::functions(), and hasBeenComposed.
void QOpenGLWidgetPrivate::destroyFbos | ( | ) |
Definition at line 1031 of file qopenglwidget.cpp.
References QOpenGLWidget::LeftBuffer, resetRhiDependentResources(), resolvedFbos, and QOpenGLWidget::RightBuffer.
Referenced by recreateFbos(), and reset().
|
inlineoverridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 570 of file qopenglwidget.cpp.
References inBackingStorePaint.
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 818 of file qopenglwidget.cpp.
References emit.
void QOpenGLWidgetPrivate::ensureRhiDependentResources | ( | ) |
Definition at line 783 of file qopenglwidget.cpp.
References QRhi::backend(), currentTargetBuffer, QRhi::newTexture(), QRhi::OpenGLES2, qWarning, QRhiTexture::RenderTarget, resolvedFbos, QRhiTexture::RGBA8, QWidgetPrivate::rhi(), QRhiTexture::setPixelSize(), QOpenGLFramebufferObject::texture(), and wrapperTextures.
Referenced by recreateFbos().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 1046 of file qopenglwidget.cpp.
References grabFramebuffer(), and QOpenGLWidget::LeftBuffer.
Referenced by grabFramebuffer().
QImage QOpenGLWidgetPrivate::grabFramebuffer | ( | QOpenGLWidget::TargetBuffer | targetBuffer | ) |
Definition at line 1051 of file qopenglwidget.cpp.
References QOpenGLFramebufferObject::bind(), hasAlpha(), initialize(), initialized, inPaintGL, isStereoEnabled(), QOpenGLWidget::LeftBuffer, qt_gl_read_framebuffer(), recreateFbos(), render(), resolvedFbos, resolveSamplesForBuffer(), QOpenGLWidget::RightBuffer, and setCurrentTargetBuffer().
void QOpenGLWidgetPrivate::initialize | ( | ) |
Definition at line 824 of file qopenglwidget.cpp.
References QRhi::backend(), QRhi::backendName(), context, QOffscreenSurface::create(), QOpenGLContext::create(), QOpenGLContext::format(), QWindow::format(), initialized, QOpenGLContext::makeCurrent(), QRhi::nativeHandles(), QRhi::OpenGLES2, paintDevice, Q_UNLIKELY, qt_gl_global_share_context(), qWarning, requestedFormat, requestedSamples, QWidgetPrivate::rhi(), QSurfaceFormat::samples(), QOpenGLContext::screen(), QOpenGLPaintDevice::setDevicePixelRatio(), QOffscreenSurface::setFormat(), QOpenGLContext::setFormat(), QSurfaceFormat::setSamples(), QOffscreenSurface::setScreen(), QOpenGLContext::setScreen(), QOpenGLContext::setShareContext(), QOpenGLPaintDevice::setSize(), QSurfaceFormat::setSwapInterval(), surface, QSurfaceFormat::swapBehavior(), QSurfaceFormat::swapInterval(), QWidget::window(), and QWidget::windowHandle().
Referenced by grabFramebuffer().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 1090 of file qopenglwidget.cpp.
void QOpenGLWidgetPrivate::invalidateFboAfterPainting | ( | ) |
Definition at line 1014 of file qopenglwidget.cpp.
References QOpenGLContext::currentContext(), QOpenGLExtensions::DiscardFramebuffer, gl_depth_attachment, gl_depth_stencil_attachment, GL_FRAMEBUFFER, gl_stencil_attachment, GLenum(), and GLsizei().
Referenced by render().
void QOpenGLWidgetPrivate::invalidateFboBeforePainting | ( | ) |
Definition at line 994 of file qopenglwidget.cpp.
References QOpenGLContext::currentContext(), QOpenGLExtensions::DiscardFramebuffer, gl_color_attachment0, gl_depth_attachment, gl_depth_stencil_attachment, GL_FRAMEBUFFER, gl_stencil_attachment, GLenum(), and GLsizei().
Referenced by render().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 1098 of file qopenglwidget.cpp.
Referenced by grabFramebuffer(), recreateFbos(), render(), resetRhiDependentResources(), and setCurrentTargetBuffer().
void QOpenGLWidgetPrivate::recreateFbos | ( | ) |
Definition at line 726 of file qopenglwidget.cpp.
References QOpenGLFramebufferObject::CombinedDepthStencil, context, currentTargetBuffer, destroyFbos(), emit, ensureRhiDependentResources(), flushPending, QOpenGLExtensions::FramebufferMultisample, QOpenGLContext::functions(), QOpenGLFunctions::glClear(), isStereoEnabled(), QOpenGLWidget::LeftBuffer, QOpenGLContext::makeCurrent(), paintDevice, requestedSamples, resolvedFbos, QOpenGLWidget::RightBuffer, QOpenGLFramebufferObjectFormat::setAttachment(), QOpenGLPaintDevice::setDevicePixelRatio(), QOpenGLPaintDevice::setSize(), surface, and textureFormat.
Referenced by grabFramebuffer(), and resizeViewportFramebuffer().
void QOpenGLWidgetPrivate::render | ( | ) |
Definition at line 922 of file qopenglwidget.cpp.
References QOpenGLContext::currentContext(), currentTargetBuffer, fakeHidden, flushPending, QOpenGLContextPrivate::get(), GL_ARRAY_BUFFER, QOpenGLFunctions::glViewport(), hasBeenComposed, initialized, inPaintGL, invalidateFboAfterPainting(), invalidateFboBeforePainting(), isStereoEnabled(), QOpenGLWidget::LeftBuffer, QOpenGLWidget::NoPartialUpdate, qWarning, QOpenGLWidget::RightBuffer, setCurrentTargetBuffer(), and updateBehavior.
Referenced by grabFramebuffer().
void QOpenGLWidgetPrivate::reset | ( | ) |
Definition at line 685 of file qopenglwidget.cpp.
References context, destroyFbos(), fakeHidden, inBackingStorePaint, initialized, paintDevice, and surface.
void QOpenGLWidgetPrivate::resetRhiDependentResources | ( | ) |
Definition at line 711 of file qopenglwidget.cpp.
References isStereoEnabled(), and wrapperTextures.
Referenced by destroyFbos().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 1114 of file qopenglwidget.cpp.
References currentTargetBuffer, initialized, and recreateFbos().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 905 of file qopenglwidget.cpp.
References QOpenGLWidget::LeftBuffer, resolveSamplesForBuffer(), and QOpenGLWidget::RightBuffer.
void QOpenGLWidgetPrivate::resolveSamplesForBuffer | ( | QOpenGLWidget::TargetBuffer | targetBuffer | ) |
Definition at line 911 of file qopenglwidget.cpp.
References QOpenGLFramebufferObject::blitFramebuffer(), flushPending, rect, and resolvedFbos.
Referenced by grabFramebuffer(), and resolveSamples().
|
inlineoverridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 551 of file qopenglwidget.cpp.
References QPlatformBackingStoreRhiConfig::OpenGL.
bool QOpenGLWidgetPrivate::setCurrentTargetBuffer | ( | QOpenGLWidget::TargetBuffer | targetBuffer | ) |
Definition at line 1680 of file qopenglwidget.cpp.
References currentTargetBuffer, isStereoEnabled(), and QOpenGLWidget::RightBuffer.
Referenced by grabFramebuffer(), render(), and toggleStereoTargetBuffer().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 651 of file qopenglwidget.cpp.
References QOpenGLWidget::LeftBuffer, QOpenGLWidget::RightBuffer, and wrapperTextures.
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 669 of file qopenglwidget.cpp.
References GL_SRGB, GL_SRGB8, GL_SRGB8_ALPHA8, GL_SRGB_ALPHA, textureFormat, QPlatformTextureList::TextureIsSrgb, and QWidgetPrivate::textureListFlags().
|
overridevirtual |
Reimplemented from QWidgetPrivate.
Definition at line 1107 of file qopenglwidget.cpp.
References currentTargetBuffer, QOpenGLWidget::LeftBuffer, QOpenGLWidget::RightBuffer, and setCurrentTargetBuffer().
QOpenGLContext* QOpenGLWidgetPrivate::context = nullptr |
Definition at line 581 of file qopenglwidget.cpp.
Referenced by beginCompose(), QOpenGLWidgetPaintDevicePrivate::endPaint(), QOpenGLWidgetPaintDevice::ensureActiveTarget(), initialize(), recreateFbos(), and reset().
QOpenGLWidget::TargetBuffer QOpenGLWidgetPrivate::currentTargetBuffer = QOpenGLWidget::LeftBuffer |
Definition at line 597 of file qopenglwidget.cpp.
Referenced by QOpenGLWidgetPaintDevice::ensureActiveTarget(), ensureRhiDependentResources(), recreateFbos(), render(), resizeViewportFramebuffer(), setCurrentTargetBuffer(), and toggleStereoTargetBuffer().
bool QOpenGLWidgetPrivate::fakeHidden = false |
Definition at line 592 of file qopenglwidget.cpp.
QOpenGLFramebufferObject* QOpenGLWidgetPrivate::fbos[2] = {} |
Definition at line 583 of file qopenglwidget.cpp.
Referenced by QOpenGLWidgetPaintDevice::ensureActiveTarget().
bool QOpenGLWidgetPrivate::flushPending = false |
Definition at line 595 of file qopenglwidget.cpp.
Referenced by beginCompose(), QOpenGLWidgetPaintDevice::ensureActiveTarget(), recreateFbos(), render(), and resolveSamplesForBuffer().
|
staticconstexpr |
Definition at line 556 of file qopenglwidget.cpp.
Referenced by invalidateFboBeforePainting().
|
staticconstexpr |
Definition at line 557 of file qopenglwidget.cpp.
Referenced by invalidateFboAfterPainting(), and invalidateFboBeforePainting().
|
staticconstexpr |
Definition at line 559 of file qopenglwidget.cpp.
Referenced by invalidateFboAfterPainting(), and invalidateFboBeforePainting().
|
staticconstexpr |
Definition at line 558 of file qopenglwidget.cpp.
Referenced by invalidateFboAfterPainting(), and invalidateFboBeforePainting().
bool QOpenGLWidgetPrivate::hasBeenComposed = false |
Definition at line 594 of file qopenglwidget.cpp.
Referenced by beginCompose(), and render().
bool QOpenGLWidgetPrivate::inBackingStorePaint = false |
Definition at line 593 of file qopenglwidget.cpp.
Referenced by beginBackingStorePainting(), endBackingStorePainting(), and reset().
bool QOpenGLWidgetPrivate::initialized = false |
Definition at line 591 of file qopenglwidget.cpp.
Referenced by QOpenGLWidgetPaintDevicePrivate::endPaint(), QOpenGLWidgetPaintDevice::ensureActiveTarget(), grabFramebuffer(), initialize(), render(), reset(), and resizeViewportFramebuffer().
bool QOpenGLWidgetPrivate::inPaintGL = false |
Definition at line 596 of file qopenglwidget.cpp.
Referenced by QOpenGLWidgetPaintDevicePrivate::endPaint(), QOpenGLWidgetPaintDevice::ensureActiveTarget(), grabFramebuffer(), and render().
QOpenGLPaintDevice* QOpenGLWidgetPrivate::paintDevice = nullptr |
Definition at line 586 of file qopenglwidget.cpp.
Referenced by initialize(), recreateFbos(), and reset().
QSurfaceFormat QOpenGLWidgetPrivate::requestedFormat = QSurfaceFormat::defaultFormat() |
Definition at line 589 of file qopenglwidget.cpp.
Referenced by initialize().
int QOpenGLWidgetPrivate::requestedSamples = 0 |
Definition at line 587 of file qopenglwidget.cpp.
Referenced by initialize(), and recreateFbos().
QOpenGLFramebufferObject* QOpenGLWidgetPrivate::resolvedFbos[2] = {} |
Definition at line 584 of file qopenglwidget.cpp.
Referenced by destroyFbos(), ensureRhiDependentResources(), grabFramebuffer(), recreateFbos(), and resolveSamplesForBuffer().
QOffscreenSurface* QOpenGLWidgetPrivate::surface = nullptr |
Definition at line 585 of file qopenglwidget.cpp.
Referenced by initialize(), recreateFbos(), and reset().
GLenum QOpenGLWidgetPrivate::textureFormat = 0 |
Definition at line 588 of file qopenglwidget.cpp.
Referenced by recreateFbos(), and textureListFlags().
QOpenGLWidget::UpdateBehavior QOpenGLWidgetPrivate::updateBehavior = QOpenGLWidget::NoPartialUpdate |
Definition at line 590 of file qopenglwidget.cpp.
Referenced by render().
QRhiTexture* QOpenGLWidgetPrivate::wrapperTextures[2] = {} |
Definition at line 582 of file qopenglwidget.cpp.
Referenced by ensureRhiDependentResources(), resetRhiDependentResources(), and texture().