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>.
Loading...
Searching...
No Matches
QOpenGLContextPrivate Class Reference

#include <qopenglcontext_p.h>

+ Inheritance diagram for QOpenGLContextPrivate:
+ Collaboration diagram for QOpenGLContextPrivate:

Public Types

using QOpenGLVertexArrayObjectHelperDestroyCallback_t = void (*)(QOpenGLVertexArrayObjectHelper *)
 
- Public Types inherited from QObjectPrivate
typedef void(* StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **)
 
using ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData>
 

Public Member Functions

 QOpenGLContextPrivate ()
 
 ~QOpenGLContextPrivate () override
 
void adopt (QPlatformOpenGLContext *)
 
int maxTextureSize ()
 
void _q_screenDestroyed (QObject *object)
 
- Public Member Functions inherited from QObjectPrivate
void ensureExtraData ()
 
 QObjectPrivate (int version=QObjectPrivateVersion)
 
virtual ~QObjectPrivate ()
 
void deleteChildren ()
 
void clearBindingStorage ()
 
void checkForIncompatibleLibraryVersion (int version) const
 
void setParent_helper (QObject *)
 
void moveToThread_helper ()
 
void setThreadData_helper (QThreadData *currentData, QThreadData *targetData, QBindingStatus *status)
 
QObjectList receiverList (const char *signal) const
 
void ensureConnectionData ()
 
void addConnection (int signal, Connection *c)
 
int signalIndex (const char *signalName, const QMetaObject **meta=nullptr) const
 
bool isSignalConnected (uint signalIdx, bool checkDeclarative=true) const
 
bool maybeSignalConnected (uint signalIndex) const
 
bool isDeclarativeSignalConnected (uint signalIdx) const
 
void connectNotify (const QMetaMethod &signal)
 
void disconnectNotify (const QMetaMethod &signal)
 
void reinitBindingStorageAfterThreadMove ()
 
virtual std::string flagsForDumping () const
 
virtual void writeToDebugStream (QDebug &) const
 
QtPrivate::QPropertyAdaptorSlotObjectgetPropertyAdaptorSlotObject (const QMetaProperty &property)
 
- Public Member Functions inherited from QObjectData
 QObjectData ()=default
 
virtual ~QObjectData ()=0
 
QMetaObjectdynamicMetaObject () const
 

Static Public Member Functions

static QOpenGLContextsetCurrentContext (QOpenGLContext *context)
 
static QOpenGLContextPrivateget (QOpenGLContext *context)
 
static bool toggleMakeCurrentTracker (QOpenGLContext *context, bool value)
 
static void cleanMakeCurrentTracker (QOpenGLContext *context)
 
- Static Public Member Functions inherited from QObjectPrivate
static bool removeConnection (Connection *c)
 
static QObjectPrivateget (QObject *o)
 
static const QObjectPrivateget (const QObject *o)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot)
 
static QMetaObject::Connection connectImpl (const QObject *sender, int signal_index, const QObject *receiver, void **slot, QtPrivate::QSlotObjectBase *slotObj, int type, const int *types, const QMetaObject *senderMetaObject)
 
static QMetaObject::Connection connect (const QObject *sender, int signal_index, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
 
static QMetaObject::Connection connect (const QObject *sender, int signal_index, const QObject *receiver, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
 
static bool disconnect (const QObject *sender, int signal_index, void **slot)
 
static bool disconnect (const QObject *sender, int signal_index, const QObject *receiver, void **slot)
 

Public Attributes

QSurfaceFormat requestedFormat
 
QPlatformOpenGLContextplatformGLContext
 
QOpenGLContextshareContext
 
QOpenGLContextGroupshareGroup
 
QScreenscreen
 
QSurfacesurface
 
QOpenGLFunctionsfunctions
 
QSet< QByteArrayextensionNames
 
QOpenGLTextureHelpertextureFunctions
 
std::function< void()> textureFunctionsDestroyCallback
 
QOpenGLContextVersionFunctionHelperversionFunctions
 
QOpenGLVertexArrayObjectHelpervaoHelper
 
QOpenGLVertexArrayObjectHelperDestroyCallback_t vaoHelperDestroyCallback
 
GLint max_texture_size
 
bool workaround_brokenFBOReadBack
 
bool workaround_brokenTexSubImage
 
bool workaround_missingPrecisionQualifiers
 
QPaintEngineExactive_engine
 
bool qgl_current_fbo_invalid
 
QOpenGLFramebufferObjectqgl_current_fbo
 
GLuint defaultFboRedirect
 
- Public Attributes inherited from QObjectPrivate
ExtraDataextraData
 
QAtomicPointer< QThreadDatathreadData
 
QAtomicPointer< ConnectionDataconnections
 
union { 
 
   QObject *   currentChildBeingDeleted 
 
   QAbstractDeclarativeData *   declarativeData 
 
};  
 
QAtomicPointer< QtSharedPointer::ExternalRefCountDatasharedRefcount
 
- Public Attributes inherited from QObjectData
QObjectq_ptr
 
QObjectparent
 
QObjectList children
 
uint isWidget: 1
 
uint blockSig: 1
 
uint wasDeleted: 1
 
uint isDeletingChildren: 1
 
uint sendChildEvents: 1
 
uint receiveChildEvents: 1
 
uint isWindow: 1
 
uint deleteLaterCalled: 1
 
uint isQuickItem: 1
 
uint willBeWidget: 1
 
uint wasWidget: 1
 
uint receiveParentEvents: 1
 
uint unused: 20
 
QAtomicInt postedEvents
 
QDynamicMetaObjectDatametaObject
 
QBindingStorage bindingStorage
 

Static Public Attributes

static QHash< QOpenGLContext *, bool > makeCurrentTracker
 
static QMutex makeCurrentTrackerMutex
 

Detailed Description

Definition at line 168 of file qopenglcontext_p.h.

Member Typedef Documentation

◆ QOpenGLVertexArrayObjectHelperDestroyCallback_t

Constructor & Destructor Documentation

◆ QOpenGLContextPrivate()

QOpenGLContextPrivate::QOpenGLContextPrivate ( )
inline

Definition at line 172 of file qopenglcontext_p.h.

References QSurfaceFormat::defaultFormat().

+ Here is the call graph for this function:

◆ ~QOpenGLContextPrivate()

QOpenGLContextPrivate::~QOpenGLContextPrivate ( )
override

Definition at line 383 of file qopenglcontext.cpp.

Member Function Documentation

◆ _q_screenDestroyed()

void QOpenGLContextPrivate::_q_screenDestroyed ( QObject * object)

Definition at line 324 of file qopenglcontext.cpp.

References screen.

◆ adopt()

void QOpenGLContextPrivate::adopt ( QPlatformOpenGLContext * context)

Definition at line 387 of file qopenglcontext.cpp.

References context, QPlatformOpenGLContext::initialize(), QPlatformOpenGLContext::isSharing(), platformGLContext, shareContext, QOpenGLContext::shareGroup(), and shareGroup.

+ Here is the call graph for this function:

◆ cleanMakeCurrentTracker()

static void QOpenGLContextPrivate::cleanMakeCurrentTracker ( QOpenGLContext * context)
inlinestatic

Definition at line 248 of file qopenglcontext_p.h.

References context.

Referenced by QOpenGLContext::~QOpenGLContext().

+ Here is the caller graph for this function:

◆ get()

◆ maxTextureSize()

int QOpenGLContextPrivate::maxTextureSize ( )

Definition at line 184 of file qopenglcontext.cpp.

References funcs, GL_RGBA, GL_TEXTURE_WIDTH, GL_UNSIGNED_BYTE, GLenum(), QOpenGLExtraFunctions::glGetTexLevelParameteriv(), GLint(), max_texture_size, next, and proxy.

+ Here is the call graph for this function:

◆ setCurrentContext()

QOpenGLContext * QOpenGLContextPrivate::setCurrentContext ( QOpenGLContext * context)
static

Set the current context. Returns the previously current context.

Definition at line 165 of file qopenglcontext.cpp.

References context, QThread::currentThread(), and qWarning.

Referenced by QOpenGLContext::doneCurrent(), QtWaylandClient::QWaylandGLContext::makeCurrent(), and QOpenGLContext::makeCurrent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toggleMakeCurrentTracker()

static bool QOpenGLContextPrivate::toggleMakeCurrentTracker ( QOpenGLContext * context,
bool value )
inlinestatic

Definition at line 241 of file qopenglcontext_p.h.

References context.

Referenced by QOpenGLContext::makeCurrent(), and QOpenGLContext::swapBuffers().

+ Here is the caller graph for this function:

Member Data Documentation

◆ active_engine

QPaintEngineEx* QOpenGLContextPrivate::active_engine

Definition at line 220 of file qopenglcontext_p.h.

◆ defaultFboRedirect

GLuint QOpenGLContextPrivate::defaultFboRedirect

Definition at line 229 of file qopenglcontext_p.h.

◆ extensionNames

QSet<QByteArray> QOpenGLContextPrivate::extensionNames
mutable

Definition at line 206 of file qopenglcontext_p.h.

◆ functions

QOpenGLFunctions* QOpenGLContextPrivate::functions

Definition at line 205 of file qopenglcontext_p.h.

◆ makeCurrentTracker

QHash< QOpenGLContext *, bool > QOpenGLContextPrivate::makeCurrentTracker
static

Definition at line 253 of file qopenglcontext_p.h.

◆ makeCurrentTrackerMutex

Q_CONSTINIT QMutex QOpenGLContextPrivate::makeCurrentTrackerMutex
static

Definition at line 254 of file qopenglcontext_p.h.

◆ max_texture_size

GLint QOpenGLContextPrivate::max_texture_size

Definition at line 214 of file qopenglcontext_p.h.

Referenced by maxTextureSize().

◆ platformGLContext

QPlatformOpenGLContext* QOpenGLContextPrivate::platformGLContext

Definition at line 200 of file qopenglcontext_p.h.

Referenced by adopt().

◆ qgl_current_fbo

QOpenGLFramebufferObject* QOpenGLContextPrivate::qgl_current_fbo

Definition at line 227 of file qopenglcontext_p.h.

◆ qgl_current_fbo_invalid

bool QOpenGLContextPrivate::qgl_current_fbo_invalid

Definition at line 222 of file qopenglcontext_p.h.

◆ requestedFormat

QSurfaceFormat QOpenGLContextPrivate::requestedFormat

Definition at line 199 of file qopenglcontext_p.h.

◆ screen

QScreen* QOpenGLContextPrivate::screen

Definition at line 203 of file qopenglcontext_p.h.

Referenced by _q_screenDestroyed().

◆ shareContext

QOpenGLContext* QOpenGLContextPrivate::shareContext

Definition at line 201 of file qopenglcontext_p.h.

Referenced by adopt().

◆ shareGroup

QOpenGLContextGroup* QOpenGLContextPrivate::shareGroup

Definition at line 202 of file qopenglcontext_p.h.

Referenced by adopt().

◆ surface

QSurface* QOpenGLContextPrivate::surface

Definition at line 204 of file qopenglcontext_p.h.

◆ textureFunctions

QOpenGLTextureHelper* QOpenGLContextPrivate::textureFunctions

Definition at line 207 of file qopenglcontext_p.h.

◆ textureFunctionsDestroyCallback

std::function<void()> QOpenGLContextPrivate::textureFunctionsDestroyCallback

Definition at line 208 of file qopenglcontext_p.h.

◆ vaoHelper

QOpenGLVertexArrayObjectHelper* QOpenGLContextPrivate::vaoHelper

Definition at line 210 of file qopenglcontext_p.h.

◆ vaoHelperDestroyCallback

QOpenGLVertexArrayObjectHelperDestroyCallback_t QOpenGLContextPrivate::vaoHelperDestroyCallback

Definition at line 212 of file qopenglcontext_p.h.

◆ versionFunctions

QOpenGLContextVersionFunctionHelper* QOpenGLContextPrivate::versionFunctions

Definition at line 209 of file qopenglcontext_p.h.

◆ workaround_brokenFBOReadBack

bool QOpenGLContextPrivate::workaround_brokenFBOReadBack

Definition at line 216 of file qopenglcontext_p.h.

◆ workaround_brokenTexSubImage

bool QOpenGLContextPrivate::workaround_brokenTexSubImage

Definition at line 217 of file qopenglcontext_p.h.

◆ workaround_missingPrecisionQualifiers

bool QOpenGLContextPrivate::workaround_missingPrecisionQualifiers

Definition at line 218 of file qopenglcontext_p.h.


The documentation for this class was generated from the following files: