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
QObjectPrivate::Connection Struct Reference

#include <qobject_p_p.h>

+ Inheritance diagram for QObjectPrivate::Connection:
+ Collaboration diagram for QObjectPrivate::Connection:

Public Member Functions

 Connection ()
 
 ~Connection ()
 
int method () const
 
void ref ()
 
void freeSlotObject ()
 
void deref ()
 

Public Attributes

Connection ** prev
 
QAtomicPointer< ConnectionnextConnectionList
 
ConnectionprevConnectionList
 
QObjectsender
 
QAtomicPointer< QObjectreceiver
 
QAtomicPointer< QThreadDatareceiverThreadData
 
union { 
 
   StaticMetaCallFunction   callFunction 
 
   QtPrivate::QSlotObjectBase *   slotObj 
 
};  
 
QAtomicPointer< const int > argumentTypes
 
QAtomicInt ref_
 
uint id = 0
 
ushort method_offset
 
ushort method_relative
 
signed int signal_index: 27
 
ushort connectionType: 2
 
ushort isSlotObject: 1
 
ushort ownArgumentTypes: 1
 
ushort isSingleShot: 1
 
- Public Attributes inherited from QObjectPrivate::ConnectionOrSignalVector
union { 
 
   TaggedSignalVector   nextInOrphanList 
 
   Connection *   next 
 
};  
 

Detailed Description

Definition at line 69 of file qobject_p_p.h.

Constructor & Destructor Documentation

◆ Connection()

QObjectPrivate::Connection::Connection ( )
inline

Definition at line 96 of file qobject_p_p.h.

◆ ~Connection()

QObjectPrivate::Connection::~Connection ( )
inline

Definition at line 1149 of file qobject.cpp.

References argumentTypes, QtPrivate::QSlotObjectBase::destroyIfLastRef(), DIRECT_CONNECTION_ONLY, isSlotObject, QBasicAtomicPointer< X >::loadRelaxed(), ownArgumentTypes, and slotObj.

+ Here is the call graph for this function:

Member Function Documentation

◆ deref()

void QObjectPrivate::Connection::deref ( )
inline

Definition at line 111 of file qobject_p_p.h.

References QBasicAtomicInteger< T >::deref(), isSlotObject, QBasicAtomicPointer< X >::loadRelaxed(), Q_ASSERT, receiver, and ref_.

+ Here is the call graph for this function:

◆ freeSlotObject()

void QObjectPrivate::Connection::freeSlotObject ( )
inline

Definition at line 104 of file qobject_p_p.h.

References QtPrivate::QSlotObjectBase::destroyIfLastRef(), isSlotObject, and slotObj.

+ Here is the call graph for this function:

◆ method()

int QObjectPrivate::Connection::method ( ) const
inline

Definition at line 98 of file qobject_p_p.h.

References isSlotObject, method_offset, method_relative, and Q_ASSERT.

◆ ref()

void QObjectPrivate::Connection::ref ( )
inline

Definition at line 103 of file qobject_p_p.h.

References QBasicAtomicInteger< T >::ref(), and ref_.

+ Here is the call graph for this function:

Member Data Documentation

◆ [union]

◆ argumentTypes

QAtomicPointer<const int> QObjectPrivate::Connection::argumentTypes

Definition at line 84 of file qobject_p_p.h.

Referenced by ~Connection().

◆ callFunction

StaticMetaCallFunction QObjectPrivate::Connection::callFunction

Definition at line 81 of file qobject_p_p.h.

◆ connectionType

ushort QObjectPrivate::Connection::connectionType

Definition at line 92 of file qobject_p_p.h.

◆ id

uint QObjectPrivate::Connection::id = 0

Definition at line 88 of file qobject_p_p.h.

◆ isSingleShot

ushort QObjectPrivate::Connection::isSingleShot

Definition at line 95 of file qobject_p_p.h.

◆ isSlotObject

ushort QObjectPrivate::Connection::isSlotObject

Definition at line 93 of file qobject_p_p.h.

Referenced by ~Connection(), deref(), freeSlotObject(), and method().

◆ method_offset

ushort QObjectPrivate::Connection::method_offset

Definition at line 89 of file qobject_p_p.h.

Referenced by method().

◆ method_relative

ushort QObjectPrivate::Connection::method_relative

Definition at line 90 of file qobject_p_p.h.

Referenced by method().

◆ nextConnectionList

QAtomicPointer<Connection> QObjectPrivate::Connection::nextConnectionList

Definition at line 74 of file qobject_p_p.h.

Referenced by QObjectPrivate::ConnectionData::removeConnection().

◆ ownArgumentTypes

ushort QObjectPrivate::Connection::ownArgumentTypes

Definition at line 94 of file qobject_p_p.h.

Referenced by ~Connection().

◆ prev

Connection** QObjectPrivate::Connection::prev

Definition at line 72 of file qobject_p_p.h.

◆ prevConnectionList

Connection* QObjectPrivate::Connection::prevConnectionList

Definition at line 75 of file qobject_p_p.h.

◆ receiver

QAtomicPointer<QObject> QObjectPrivate::Connection::receiver

Definition at line 78 of file qobject_p_p.h.

Referenced by deref().

◆ receiverThreadData

QAtomicPointer<QThreadData> QObjectPrivate::Connection::receiverThreadData

Definition at line 79 of file qobject_p_p.h.

◆ ref_

QAtomicInt QObjectPrivate::Connection::ref_
Initial value:
{
2
}

Definition at line 85 of file qobject_p_p.h.

Referenced by deref(), and ref().

◆ sender

QObject* QObjectPrivate::Connection::sender

Definition at line 77 of file qobject_p_p.h.

Referenced by QMetaObjectPrivate::connect(), and QObjectPrivate::connectImpl().

◆ signal_index

signed int QObjectPrivate::Connection::signal_index

Definition at line 91 of file qobject_p_p.h.

◆ slotObj

QtPrivate::QSlotObjectBase* QObjectPrivate::Connection::slotObj

Definition at line 82 of file qobject_p_p.h.

Referenced by ~Connection(), and freeSlotObject().


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