![]() |
Qt 6.x
The Qt SDK
|
#include <qobject_p_p.h>
Public Types | |
enum | LockPolicy { NeedToLock , AlreadyLockedAndTemporarilyReleasingLock } |
Public Member Functions | |
~ConnectionData () | |
void | removeConnection (Connection *c) |
void | cleanOrphanedConnections (QObject *sender, LockPolicy lockPolicy=NeedToLock) |
void | cleanOrphanedConnectionsImpl (QObject *sender, LockPolicy lockPolicy) |
ConnectionList & | connectionsForSignal (int signal) |
void | resizeSignalVector (uint size) |
int | signalVectorCount () const |
Static Public Member Functions | |
static void | deleteOrphaned (TaggedSignalVector o) |
Public Attributes | |
QAtomicInteger< uint > | currentConnectionId |
QAtomicInt | ref |
QAtomicPointer< SignalVector > | signalVector |
Connection * | senders = nullptr |
Sender * | currentSender = nullptr |
std::atomic< TaggedSignalVector > | orphaned = {} |
Definition at line 136 of file qobject_p_p.h.
Enumerator | |
---|---|
NeedToLock | |
AlreadyLockedAndTemporarilyReleasingLock |
Definition at line 163 of file qobject_p_p.h.
|
inline |
Definition at line 147 of file qobject_p_p.h.
References deleteOrphaned(), orphaned, Q_ASSERT, and signalVector.
|
inline |
Definition at line 170 of file qobject_p_p.h.
References cleanOrphanedConnectionsImpl(), and orphaned.
Referenced by QObject::~QObject(), and QMetaObjectPrivate::disconnect().
void QObjectPrivate::ConnectionData::cleanOrphanedConnectionsImpl | ( | QObject * | sender, |
LockPolicy | lockPolicy | ||
) |
Definition at line 397 of file qobject.cpp.
References lock, QMutex::lock(), signalSlotLock(), and QMutex::unlock().
Referenced by cleanOrphanedConnections().
|
inline |
Definition at line 177 of file qobject_p_p.h.
References signal, and signalVector.
Referenced by QObject::~QObject(), and QObjectPrivate::addConnection().
|
inlinestatic |
Definition at line 425 of file qobject.cpp.
References next, o, and Q_ASSERT.
Referenced by ~ConnectionData().
void QObjectPrivate::ConnectionData::removeConnection | ( | QObjectPrivate::Connection * | c | ) |
Definition at line 331 of file qobject.cpp.
References QObjectPrivate::connections, Q_ASSERT, and signalVector.
Referenced by QObject::~QObject().
Definition at line 182 of file qobject_p_p.h.
References QList< T >::count(), i, QBasicAtomicPointer< X >::loadRelaxed(), o, orphaned, ptr(), signalVector, and vector.
Referenced by QObjectPrivate::addConnection().
|
inline |
Definition at line 217 of file qobject_p_p.h.
References signalVector.
Referenced by QObject::~QObject(), QMetaObjectPrivate::connect(), QMetaObjectPrivate::disconnect(), QObject::dumpObjectInfo(), QObjectPrivate::isSignalConnected(), and QObjectPrivate::maybeSignalConnected().
QAtomicInteger<uint> QObjectPrivate::ConnectionData::currentConnectionId |
Definition at line 140 of file qobject_p_p.h.
Referenced by QObject::~QObject(), and QObjectPrivate::addConnection().
Definition at line 144 of file qobject_p_p.h.
Referenced by QObjectPrivate::Sender::Sender(), QObject::~QObject(), QObject::sender(), QObject::senderSignalIndex(), and QObjectPrivate::setThreadData_helper().
std::atomic<TaggedSignalVector> QObjectPrivate::ConnectionData::orphaned = {} |
Definition at line 145 of file qobject_p_p.h.
Referenced by ~ConnectionData(), cleanOrphanedConnections(), and resizeSignalVector().
QAtomicInt QObjectPrivate::ConnectionData::ref |
Definition at line 141 of file qobject_p_p.h.
Referenced by QObject::~QObject(), and QObjectPrivate::ensureConnectionData().
Connection* QObjectPrivate::ConnectionData::senders = nullptr |
Definition at line 143 of file qobject_p_p.h.
Referenced by QObject::~QObject(), QObject::dumpObjectInfo(), QObject::sender(), QObjectPrivate::senderList(), QObject::senderSignalIndex(), and QObjectPrivate::setThreadData_helper().
QAtomicPointer<SignalVector> QObjectPrivate::ConnectionData::signalVector |
Definition at line 142 of file qobject_p_p.h.
Referenced by ~ConnectionData(), QMetaObjectPrivate::connect(), connectionsForSignal(), QObject::dumpObjectInfo(), QObjectPrivate::isSender(), QObjectPrivate::isSignalConnected(), QObjectPrivate::maybeSignalConnected(), QObjectPrivate::receiverList(), QObject::receivers(), removeConnection(), resizeSignalVector(), and signalVectorCount().