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

#include <qquick3dnode_p_p.h>

+ Inheritance diagram for QQuick3DNodePrivate:
+ Collaboration diagram for QQuick3DNodePrivate:

Public Member Functions

 QQuick3DNodePrivate (QQuick3DObjectPrivate::Type t)
 
 ~QQuick3DNodePrivate ()
 
void init ()
 
QMatrix4x4 calculateLocalTransform ()
 
void calculateGlobalVariables ()
 
void markSceneTransformDirty ()
 
QMatrix4x4 localRotationMatrix () const
 
QMatrix4x4 sceneRotationMatrix () const
 
void emitChangesToSceneTransform ()
 
bool isSceneTransformRelatedSignal (const QMetaMethod &signal) const
 
bool isDirectionRelatedSignal (const QMetaMethod &signal) const
 
void setIsHiddenInEditor (bool isHidden)
 
- Public Member Functions inherited from QQuick3DObjectPrivate
 QQuick3DObjectPrivate (Type t)
 
 ~QQuick3DObjectPrivate () override
 
void init (QQuick3DObject *parent)
 
QQmlListProperty< QObjectdata ()
 
QQmlListProperty< QObjectresources ()
 
QQmlListProperty< QQuick3DObjectchildren ()
 
QQmlListProperty< QQuickStatestates ()
 
QQmlListProperty< QQuickTransitiontransitions ()
 
QString state () const
 
void setState (const QString &)
 
void _q_resourceObjectDeleted (QObject *)
 
void _q_cleanupContentItem2D ()
 
quint64 _q_createJSWrapper (QQmlV4ExecutionEnginePtr engine)
 
void addItemChangeListener (QQuick3DObjectChangeListener *listener, ChangeTypes types)
 
void updateOrAddItemChangeListener (QQuick3DObjectChangeListener *listener, ChangeTypes types)
 
void removeItemChangeListener (QQuick3DObjectChangeListener *, ChangeTypes types)
 
QQuickStateGroup_states ()
 
QString dirtyToString () const
 
void dirty (DirtyType)
 
void addToDirtyList ()
 
void removeFromDirtyList ()
 
void setCulled (bool)
 
void addChild (QQuick3DObject *)
 
void removeChild (QQuick3DObject *)
 
void siblingOrderChanged ()
 
void refSceneManager (QQuick3DSceneManager &)
 
void derefSceneManager ()
 
void updateSubFocusItem (QQuick3DObject *scope, bool focus)
 
void itemChange (QQuick3DObject::ItemChange, const QQuick3DObject::ItemChangeData &)
 
virtual void updatePolish ()
 
- 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 QQuick3DNodePrivateget (QQuick3DNode *node)
 
- Static Public Member Functions inherited from QQuick3DObjectPrivate
template<typename SceneContext , typename CallContext , typename Setter >
static void attachWatcherPriv (SceneContext *sceneContext, CallContext *callContext, Setter setter, QQuick3DObject *newO, QObject *oldO)
 
template<typename Context , typename Setter , typename Object3D >
static void attachWatcher (Context *context, Setter setter, Object3D *newO, Object3D *oldO)
 Attach a object-destroyed-watcher to an object that's not owned.
 
static QQuick3DObjectPrivateget (QQuick3DObject *item)
 
static const QQuick3DObjectPrivateget (const QQuick3DObject *item)
 
static QSSGRenderGraphObjectupdateSpatialNode (QQuick3DObject *o, QSSGRenderGraphObject *n)
 
static void data_append (QQmlListProperty< QObject > *, QObject *)
 
static qsizetype data_count (QQmlListProperty< QObject > *)
 
static QObjectdata_at (QQmlListProperty< QObject > *, qsizetype)
 
static void data_clear (QQmlListProperty< QObject > *)
 
static QObjectresources_at (QQmlListProperty< QObject > *, qsizetype)
 
static void resources_append (QQmlListProperty< QObject > *, QObject *)
 
static qsizetype resources_count (QQmlListProperty< QObject > *)
 
static void resources_clear (QQmlListProperty< QObject > *)
 
static void children_append (QQmlListProperty< QQuick3DObject > *, QQuick3DObject *)
 
static qsizetype children_count (QQmlListProperty< QQuick3DObject > *)
 
static QQuick3DObjectchildren_at (QQmlListProperty< QQuick3DObject > *, qsizetype)
 
static void children_clear (QQmlListProperty< QQuick3DObject > *)
 
static void refSceneManager (QQuick3DObject *obj, QQuick3DSceneManager &mgr)
 
static void derefSceneManager (QQuick3DObject *obj)
 
- 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

RotationData m_rotation
 
QVector3D m_position
 
QVector3D m_scale { 1.0f, 1.0f, 1.0f }
 
QVector3D m_pivot
 
float m_opacity = 1.0f
 
int m_staticFlags = 0
 
bool m_visible = true
 
QMatrix4x4 m_sceneTransform
 
bool m_sceneTransformDirty = true
 
int m_sceneTransformConnectionCount = 0
 
int m_directionConnectionCount = 0
 
bool m_isHiddenInEditor = false
 
bool m_hasInheritedUniformScale = true
 
- Public Attributes inherited from QQuick3DObjectPrivate
QLazilyAllocated< ExtraDataextra
 
QVector< QQuick3DObjectPrivate::ChangeListenerchangeListeners
 
QQuickStateGroup_stateGroup
 
quint32 dirtyAttributes
 
QQuick3DObjectnextDirtyItem
 
QQuick3DObject ** prevDirtyItem
 
QPointer< QQuick3DSceneManagersceneManager
 
int sceneRefCount
 
QQuick3DObjectparentItem
 
QList< QQuick3DObject * > childItems
 
QQuick3DObjectsubFocusItem
 
QSSGRenderGraphObjectspatialNode = nullptr
 
Type type = Type::Unknown
 
bool componentComplete = true
 
bool preSyncNeeded = false
 
bool culled
 
bool sharedResource = false
 
QQuick3DItem2DcontentItem2d = nullptr
 
ConnectionMap connectionMap
 
- 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 QQuick3DObjectPrivate
enum  ChangeType {
  Geometry = 0x01 , SiblingOrder = 0x02 , Visibility = 0x04 , Opacity = 0x08 ,
  Destroyed = 0x10 , Parent = 0x20 , Children = 0x40 , Rotation = 0x80 ,
  ImplicitWidth = 0x100 , ImplicitHeight = 0x200 , Enabled = 0x400
}
 
enum  DirtyType {
  TransformOrigin = 0x00000001 , Transform = 0x00000002 , BasicTransform = 0x00000004 , Position = 0x00000008 ,
  Size = 0x00000010 , ZValue = 0x00000020 , Content = 0x00000040 , Smooth = 0x00000080 ,
  OpacityValue = 0x00000100 , ChildrenChanged = 0x00000200 , ChildrenStackingChanged = 0x00000400 , ParentChanged = 0x00000800 ,
  Clip = 0x00001000 , Window = 0x00002000 , EffectReference = 0x00008000 , Visible = 0x00010000 ,
  HideReference = 0x00020000 , Antialiasing = 0x00040000 , InstanceRootChanged = 0x00080000 , TransformUpdateMask = TransformOrigin | Transform | BasicTransform | Position | Window ,
  ComplexTransformUpdateMask = Transform | Window , ContentUpdateMask = Size | Content | Smooth | Window | Antialiasing , ChildrenUpdateMask = ChildrenChanged | ChildrenStackingChanged | EffectReference | Window
}
 
using Type = QSSGRenderGraphObject::Type
 
using ConnectionMap = QHash<ConnectionKey, QMetaObject::Connection>
 
- Public Types inherited from QObjectPrivate
typedef void(* StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **)
 
using ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData>
 

Detailed Description

Definition at line 34 of file qquick3dnode_p_p.h.

Constructor & Destructor Documentation

◆ QQuick3DNodePrivate()

QT_BEGIN_NAMESPACE QQuick3DNodePrivate::QQuick3DNodePrivate ( QQuick3DObjectPrivate::Type t)
explicit

Definition at line 15 of file qquick3dnode.cpp.

◆ ~QQuick3DNodePrivate()

QQuick3DNodePrivate::~QQuick3DNodePrivate ( )

Definition at line 21 of file qquick3dnode.cpp.

Member Function Documentation

◆ calculateGlobalVariables()

void QQuick3DNodePrivate::calculateGlobalVariables ( )

Definition at line 356 of file qquick3dnode.cpp.

References QSSGRenderNode::calculateTransformMatrix(), get(), m_hasInheritedUniformScale, m_pivot, m_position, m_rotation, m_scale, m_sceneTransform, m_sceneTransformDirty, QObjectData::parent, qFuzzyCompare(), QVector3D::x(), QVector3D::y(), and QVector3D::z().

Referenced by emitChangesToSceneTransform(), and sceneRotationMatrix().

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

◆ calculateLocalTransform()

QMatrix4x4 QQuick3DNodePrivate::calculateLocalTransform ( )

◆ emitChangesToSceneTransform()

void QQuick3DNodePrivate::emitChangesToSceneTransform ( )

Definition at line 412 of file qquick3dnode.cpp.

References calculateGlobalVariables(), emit, QSSGUtils::mat44::getPosition(), QSSGUtils::mat44::getScale(), QSSGUtils::mat44::getUpper3x3(), m_directionConnectionCount, m_sceneTransform, QVector3D::normalized(), QMatrix4x4::normalMatrix(), Q_EMIT, qFuzzyCompare(), and QSSGUtils::mat33::transform().

Referenced by markSceneTransformDirty().

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

◆ get()

static QQuick3DNodePrivate * QQuick3DNodePrivate::get ( QQuick3DNode * node)
inlinestatic

Definition at line 57 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables(), QQuick3DNode::itemChange(), markSceneTransformDirty(), QQuick3DNode::rotate(), sceneRotationMatrix(), and QQuick3DJoint::setSkeletonRoot().

+ Here is the caller graph for this function:

◆ init()

void QQuick3DNodePrivate::init ( )

Definition at line 26 of file qquick3dnode.cpp.

◆ isDirectionRelatedSignal()

bool QQuick3DNodePrivate::isDirectionRelatedSignal ( const QMetaMethod & signal) const

Definition at line 487 of file qquick3dnode.cpp.

References QQuick3DNode::forwardChanged(), QMetaMethod::fromSignal(), QQuick3DNode::rightChanged(), signal, and QQuick3DNode::upChanged().

+ Here is the call graph for this function:

◆ isSceneTransformRelatedSignal()

bool QQuick3DNodePrivate::isSceneTransformRelatedSignal ( const QMetaMethod & signal) const

Definition at line 472 of file qquick3dnode.cpp.

References QMetaMethod::fromSignal(), QQuick3DNode::scenePositionChanged(), QQuick3DNode::sceneRotationChanged(), QQuick3DNode::sceneScaleChanged(), QQuick3DNode::sceneTransformChanged(), and signal.

+ Here is the call graph for this function:

◆ localRotationMatrix()

QMatrix4x4 QQuick3DNodePrivate::localRotationMatrix ( ) const
inline

Definition at line 382 of file qquick3dnode.cpp.

References m_rotation, and RotationData::toRotationMatrix().

Referenced by sceneRotationMatrix().

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

◆ markSceneTransformDirty()

void QQuick3DNodePrivate::markSceneTransformDirty ( )

Definition at line 530 of file qquick3dnode.cpp.

References child, QQuick3DObjectPrivate::children(), emitChangesToSceneTransform(), get(), QQuick3DObjectPrivate::get(), m_directionConnectionCount, m_sceneTransformConnectionCount, and m_sceneTransformDirty.

+ Here is the call graph for this function:

◆ sceneRotationMatrix()

QMatrix4x4 QQuick3DNodePrivate::sceneRotationMatrix ( ) const
inline

Definition at line 387 of file qquick3dnode.cpp.

References calculateGlobalVariables(), get(), localRotationMatrix(), m_hasInheritedUniformScale, m_sceneTransformDirty, and QSSGUtils::mat44::normalize().

+ Here is the call graph for this function:

◆ setIsHiddenInEditor()

void QQuick3DNodePrivate::setIsHiddenInEditor ( bool isHidden)

Definition at line 31 of file qquick3dnode.cpp.

References m_isHiddenInEditor.

Member Data Documentation

◆ m_directionConnectionCount

int QQuick3DNodePrivate::m_directionConnectionCount = 0

Definition at line 69 of file qquick3dnode_p_p.h.

Referenced by emitChangesToSceneTransform(), and markSceneTransformDirty().

◆ m_hasInheritedUniformScale

bool QQuick3DNodePrivate::m_hasInheritedUniformScale = true

Definition at line 71 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables(), and sceneRotationMatrix().

◆ m_isHiddenInEditor

bool QQuick3DNodePrivate::m_isHiddenInEditor = false

Definition at line 70 of file qquick3dnode_p_p.h.

Referenced by setIsHiddenInEditor().

◆ m_opacity

float QQuick3DNodePrivate::m_opacity = 1.0f

Definition at line 63 of file qquick3dnode_p_p.h.

◆ m_pivot

QVector3D QQuick3DNodePrivate::m_pivot

Definition at line 62 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables().

◆ m_position

QVector3D QQuick3DNodePrivate::m_position

Definition at line 60 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables().

◆ m_rotation

RotationData QQuick3DNodePrivate::m_rotation

Definition at line 59 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables(), and localRotationMatrix().

◆ m_scale

QVector3D QQuick3DNodePrivate::m_scale { 1.0f, 1.0f, 1.0f }

Definition at line 61 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables().

◆ m_sceneTransform

QMatrix4x4 QQuick3DNodePrivate::m_sceneTransform

Definition at line 66 of file qquick3dnode_p_p.h.

Referenced by calculateGlobalVariables(), and emitChangesToSceneTransform().

◆ m_sceneTransformConnectionCount

int QQuick3DNodePrivate::m_sceneTransformConnectionCount = 0

Definition at line 68 of file qquick3dnode_p_p.h.

Referenced by markSceneTransformDirty().

◆ m_sceneTransformDirty

bool QQuick3DNodePrivate::m_sceneTransformDirty = true

◆ m_staticFlags

int QQuick3DNodePrivate::m_staticFlags = 0

Definition at line 64 of file qquick3dnode_p_p.h.

◆ m_visible

bool QQuick3DNodePrivate::m_visible = true

Definition at line 65 of file qquick3dnode_p_p.h.


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