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
QOpenGLContextGroupPrivate Class Reference

#include <qopenglcontext_p.h>

+ Inheritance diagram for QOpenGLContextGroupPrivate:
+ Collaboration diagram for QOpenGLContextGroupPrivate:

Public Member Functions

 QOpenGLContextGroupPrivate ()
 
 ~QOpenGLContextGroupPrivate () override
 
void addContext (QOpenGLContext *ctx)
 
void removeContext (QOpenGLContext *ctx)
 
void cleanup ()
 
void deletePendingResources (QOpenGLContext *ctx)
 
- 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
 

Public Attributes

QOpenGLContextm_context
 
QList< QOpenGLContext * > m_shares
 
QRecursiveMutex m_mutex
 
QHash< QOpenGLMultiGroupSharedResource *, QOpenGLSharedResource * > m_resources
 
QAtomicInt m_refs
 
QList< QOpenGLSharedResource * > m_sharedResources
 
QList< QOpenGLSharedResource * > m_pendingDeletion
 
- 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
 

Additional Inherited Members

- Public Types inherited from QObjectPrivate
typedef void(* StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **)
 
using ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData>
 
- 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)
 

Detailed Description

Definition at line 94 of file qopenglcontext_p.h.

Constructor & Destructor Documentation

◆ QOpenGLContextGroupPrivate()

QOpenGLContextGroupPrivate::QOpenGLContextGroupPrivate ( )
inline

Definition at line 98 of file qopenglcontext_p.h.

◆ ~QOpenGLContextGroupPrivate()

QOpenGLContextGroupPrivate::~QOpenGLContextGroupPrivate ( )
overridedefault

Member Function Documentation

◆ addContext()

void QOpenGLContextGroupPrivate::addContext ( QOpenGLContext * ctx)

Definition at line 1047 of file qopenglcontext.cpp.

References m_mutex, m_refs, m_shares, and QBasicAtomicInteger< T >::ref().

+ Here is the call graph for this function:

◆ cleanup()

void QOpenGLContextGroupPrivate::cleanup ( )

Definition at line 1081 of file qopenglcontext.cpp.

References QList< T >::begin(), QList< T >::clear(), QHash< Key, T >::clear(), QHash< Key, T >::constBegin(), QHash< Key, T >::constEnd(), QList< T >::end(), it, m_pendingDeletion, m_resources, m_sharedResources, and qDeleteAll().

Referenced by removeContext().

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

◆ deletePendingResources()

void QOpenGLContextGroupPrivate::deletePendingResources ( QOpenGLContext * ctx)

Definition at line 1107 of file qopenglcontext.cpp.

References QList< T >::clear(), it, m_mutex, m_pendingDeletion, and pending.

+ Here is the call graph for this function:

◆ removeContext()

void QOpenGLContextGroupPrivate::removeContext ( QOpenGLContext * ctx)

Definition at line 1054 of file qopenglcontext.cpp.

References cleanup(), QList< T >::constFirst(), QThread::currentThread(), QBasicAtomicInteger< T >::deref(), QList< T >::isEmpty(), m_context, m_mutex, m_refs, m_shares, and QList< T >::removeOne().

+ Here is the call graph for this function:

Member Data Documentation

◆ m_context

QOpenGLContext* QOpenGLContextGroupPrivate::m_context

Definition at line 112 of file qopenglcontext_p.h.

Referenced by removeContext().

◆ m_mutex

QRecursiveMutex QOpenGLContextGroupPrivate::m_mutex

Definition at line 115 of file qopenglcontext_p.h.

Referenced by addContext(), deletePendingResources(), and removeContext().

◆ m_pendingDeletion

QList<QOpenGLSharedResource *> QOpenGLContextGroupPrivate::m_pendingDeletion

Definition at line 121 of file qopenglcontext_p.h.

Referenced by cleanup(), and deletePendingResources().

◆ m_refs

QAtomicInt QOpenGLContextGroupPrivate::m_refs

Definition at line 118 of file qopenglcontext_p.h.

Referenced by addContext(), and removeContext().

◆ m_resources

QHash<QOpenGLMultiGroupSharedResource *, QOpenGLSharedResource *> QOpenGLContextGroupPrivate::m_resources

Definition at line 117 of file qopenglcontext_p.h.

Referenced by cleanup().

◆ m_sharedResources

QList<QOpenGLSharedResource *> QOpenGLContextGroupPrivate::m_sharedResources

Definition at line 120 of file qopenglcontext_p.h.

Referenced by cleanup().

◆ m_shares

QList<QOpenGLContext *> QOpenGLContextGroupPrivate::m_shares

Definition at line 114 of file qopenglcontext_p.h.

Referenced by addContext(), and removeContext().


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