- Qt 5.5
- Qt3D Module
- Qt3D Namespace
- Qt 5.5.1 Reference Documentation

# Qt3D Namespace

Contains classes and types that are the foundation of the Qt3D simulation framework, as well as classes that provide the ability to render using the Qt3D framework. More...

Header: | #include <Qt3D>
qmake: | QT += 3dcore

## Namespaces

namespace | AssimpHelper
namespace | Input
namespace | Quick

## Classes

class | ArrayAllocatingPolicy
class | ArrayPreallocationPolicy
class | AspectTaskRunnable
class | AssimpParser
class | CircularBufferData
class | Dependency
class | DependencyHandler
class | FunctorType
class | GLTFParser
class | Int2Type
class | ListAllocatingPolicy
class | NonLockingPolicy
class | NullCollisionQueryService
class | NullOpenGLInformationService
class | NullSystemInformationService
class | ObjectLevelLockingPolicy
class | PropertyChangeHandler
class | Q3DKeyEvent
class | Q3DMouseEvent
class | Q3DWheelEvent
class | QAbstractArbiter
class | QAbstractAspect
class | QAbstractAttribute
class | QAbstractBuffer
class | QAbstractCollisionQueryService
class | QAbstractCollisionQueryServicePrivate
class | QAbstractFrameAdvanceService
class | QAbstractFunctor
class | QAbstractPostman
class | QAbstractServiceProvider
class | QAbstractTransform
class | QAspectEngine
class | QAspectFactory
class | QAspectJob
class | QAspectJobProviderInterface
class | QAspectManager
class | QAspectThread
class | QAxisAlignedBoundingBox
class | QBackendNode
class | QBackendNodeFactory
class | QBackendNodeFunctor
class | QBackendScenePropertyChange
class | QBoundedCircularBuffer
class | QBoundingSphere
class | QBoundingVolume
class | QBoundingVolumeProvider
class | QCamera
class | QCameraLens
class | QChangeArbiter
class | QCircularBuffer
class | QCollisionQueryResult
class | QCollisionQueryResultPrivate
class | QComponent
class | QEntity
class | QFixedFrameAllocator
class | QFrameAllocator
class | QFrameChunk
class | QHandle
class | QHandleManager
class | QInputAspect
class | QKeyboardController
class | QKeyboardInput
class | QLockableObserverInterface
class | QLookAtTransform
class | QMatrixTransform
class | QMouseController
class | QMouseControllerPrivate
class | QMouseInput
class | QMouseInputPrivate
class | QNode
class | QNodeId
class | QNodeVisitor
class | QObservableInterface
class | QObserverInterface
class | QOpenGLInformationService
class | QPostman
class | QRay3D
class | QResourceInfo
class | QResourceManager
class | QRotateTransform
class | QScaleTransform
class | QScene
class | QSceneChange
class | QSceneObserverInterface
class | QScenePropertyChange
class | QScheduler
class | QServiceLocator
class | QSystemInformationService
class | QThreadPooler
class | QTickClock
class | QTickClockService
class | QTransform
class | QTranslateTransform
class | QUrlHelper
class | RunnableInterface
class | SyncTaskRunnable
class | TypedCircularBufferData
class | WeaverJob

## Types

enum | ChangeFlag { NodeCreated, NodeAboutToBeDeleted, NodeDeleted, NodeUpdated, ..., AllChanges }
flags | ChangeFlags
typedef | Q3DKeyEventPtr
typedef | Q3DMouseEventPtr
typedef | Q3DWheelEventPtr
typedef | QAbstractBufferPtr
typedef | QAspectJobPtr
typedef | QBackendNodeFunctorPtr
typedef | QBackendScenePropertyChangePtr
typedef | QComponentList
typedef | QNodeList
typedef | QNodePtr
typedef | QObservableList
typedef | QQueryHandle
typedef | QSceneChangeList
typedef | QSceneChangePtr
typedef | QScenePropertyChangePtr

## Functions

| PropertyChangeHandler(Receiver * receiver, QObject * parent)
QHandle<T, INDEXBITS> | acquire(T * d)
void | connectToPropertyChange(const QObject * object, int propertyIndex)
const T * | constData(const QHandle<T, INDEXBITS> & handle, bool * ok) const
T * | data(const QHandle<T, INDEXBITS> & handle, bool * ok)
void | disconnectFromPropertyChange(const QObject * object, int propertyIndex)
qintptr | functorTypeId()
bool | intersects(const QAxisAlignedBoundingBox & a, const QAxisAlignedBoundingBox & b)
uint | qHash(const QNodeId & id, uint seed = 0)
int | qt_metacall(QMetaObject::Call call, int methodId, void ** args)
void | registerBackendType(const QBackendNodeFunctorPtr & functor)
void | release(const QHandle<T, INDEXBITS> & handle)
void | reset()
void | swap(QCircularBuffer<T> & lhs, QCircularBuffer<T> & rhs)
void | update(const QHandle<T, INDEXBITS> & handle, T * d)
bool | operator!=(const Dependency & left, const Dependency & right)
bool | operator!=(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
QCircularBuffer<T> | operator+(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
bool | operator<(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
QDebug | operator<<(QDebug dbg, const QAxisAlignedBoundingBox & c)
QDebug | operator<<(QDebug d, const QNodeId & id)
QDebug | operator<<(QDebug dbg, const Qt3D::QRay3D & ray)
QDataStream & | operator<<(QDataStream & stream, const Qt3D::QRay3D & ray)
QDebug | operator<<(QDebug dbg, const QHandle<T, INDEXBITS> & h)
bool | operator<=(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
bool | operator==(const Dependency & left, const Dependency & right)
bool | operator==(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
bool | operator>(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
bool | operator>=(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)
QDataStream & | operator>>(QDataStream & stream, Qt3D::QRay3D & ray)

## Detailed Description

Contains classes and types that are the foundation of the Qt3D simulation framework, as well as classes that provide the ability to render using the Qt3D framework.

## Namespaces

### namespace Qt3D::AssimpHelper

### namespace Qt3D::Input

### namespace Qt3D::Quick

## Classes

### class ArrayAllocatingPolicy

Allocates memory in a contiguous space trying to minimize fragmentation and cache misses. More...

### class ArrayPreallocationPolicy

### class AspectTaskRunnable

### class AssimpParser

Provides a generic way of loading various 3D assets format into a Qt3D scene. More...

### class CircularBufferData

### class Dependency

### class DependencyHandler

### class FunctorType

### class GLTFParser

### class Int2Type

### class ListAllocatingPolicy

Allocates resources in a list. More...

### class NonLockingPolicy

### class NullCollisionQueryService

### class NullOpenGLInformationService

### class NullSystemInformationService

### class ObjectLevelLockingPolicy

Provides locking access to a resource through the use of a QReadWriteLock. More...

### class PropertyChangeHandler

### class Q3DKeyEvent

### class Q3DMouseEvent

The Qt3D::Q3DMouseEvent contains parameters that describe a mouse event. More...

### class Q3DWheelEvent

The Qt3D::Q3DWheelEvent contains parameters that describe a mouse wheel event. More...

### class QAbstractArbiter

### class QAbstractAspect

QAbstractAspect is the base class for aspects that provide a vertical slice of behavior. More...

### class QAbstractAttribute

### class QAbstractBuffer

### class QAbstractCollisionQueryService

### class QAbstractCollisionQueryServicePrivate

### class QAbstractFrameAdvanceService

Interface for a Qt3D frame advance service More...

### class QAbstractFunctor

### class QAbstractPostman

### class QAbstractServiceProvider

### class QAbstractTransform

### class QAspectEngine

### class QAspectFactory

### class QAspectJob

### class QAspectJobProviderInterface

### class QAspectManager

### class QAspectThread

### class QAxisAlignedBoundingBox

### class QBackendNode

### class QBackendNodeFactory

### class QBackendNodeFunctor

### class QBackendScenePropertyChange

### class QBoundedCircularBuffer

### class QBoundingSphere

### class QBoundingVolume

### class QBoundingVolumeProvider

### class QCamera

### class QCameraLens

Qt3D::QCameraLens specifies the projection matrix that will be used to define a Camera for a 3D scene. More...

### class QChangeArbiter

Acts as a message router between observables and observers. More...

### class QCircularBuffer

A template class providing a dynamic circular array. More...

### class QCollisionQueryResult

### class QCollisionQueryResultPrivate

### class QComponent

The base class of scene nodes that can be aggregated by Qt3D::QEntity instances as a component. More...

### class QEntity

Qt3D::QEntity is a Qt3D::QNode subclass that can aggregate several Qt3D::QComponent instances that will specify its behavior. More...

### class QFixedFrameAllocator

### class QFrameAllocator

Provides a pool of memory chunks to be used to allocate objects on a per frame basis. More...

### class QFrameChunk

### class QHandle

### class QHandleManager

### class QInputAspect

### class QKeyboardController

### class QKeyboardInput

### class QLockableObserverInterface

### class QLookAtTransform

### class QMatrixTransform

### class QMouseController

Qt3D::QMouseController is in charge of dispatching mouse events to attached Qt3D::QMouseInput objects. More...

### class QMouseControllerPrivate

### class QMouseInput

Provides a mean of being notified about mouse events when attached to a Qt3D::QMouseController instance. More...

### class QMouseInputPrivate

### class QNode

Qt3D::QNode is the base class of all Qt3D node classes used to build a Qt3D scene. More...

### class QNodeId

### class QNodeVisitor

### class QObservableInterface

### class QObserverInterface

### class QOpenGLInformationService

Interface for a Qt3D OpenGL information service More...

### class QPostman

### class QRay3D

### class QResourceInfo

### class QResourceManager

The QResourceManager allocates memory for resources that can be referenced by a QHandle. More...

### class QRotateTransform

### class QScaleTransform

### class QScene

### class QSceneChange

### class QSceneObserverInterface

### class QScenePropertyChange

### class QScheduler

### class QServiceLocator

Service locator used by aspects to retrieve pointers to concrete service objects More...

### class QSystemInformationService

Interface for a Qt3D system information service More...

### class QThreadPooler

### class QTickClock

### class QTickClockService

Default Qt3D::QAbstractFrameAdvanceService implementation. More...

### class QTransform

### class QTranslateTransform

### class QUrlHelper

### class RunnableInterface

### class SyncTaskRunnable

### class TypedCircularBufferData

### class WeaverJob

## Type Documentation

### enum Qt3D::ChangeFlag
flags Qt3D::ChangeFlags

The types of change that can be sent and received by Qt3D's change notification system.

Constant | Value | Description
--- | --- | ---
`Qt3D::NodeCreated` | `1<<0` | A new instance of a QNode subclass has been created.
`Qt3D::NodeAboutToBeDeleted` | `1<<1` | A QNode is about to be deleted from the scene.
`Qt3D::NodeDeleted` | `1<<2` | A QNode has been deleted.
`Qt3D::NodeUpdated` | `1<<3` | A QNode property has been updated.
`Qt3D::NodeAdded` | `1<<4` | A QNode has been added to the scene.
`Qt3D::NodeRemoved` | `1<<5` | A QNode has been removed from the scene.
`Qt3D::ComponentAdded` | `1<<6` | A QComponent has been added to a QEntity.
`Qt3D::ComponentRemoved` | `1<<7` | A QComponent has been removed from a QEntity.
`Qt3D::AllChanges` | `0xFFFFFFFF` | Allows an observer to monitor for any of the above changes.

The ChangeFlags type is a typedef for QFlags<ChangeFlag>. It stores an OR combination of ChangeFlag values.

### typedef Qt3D::Q3DKeyEventPtr

### typedef Qt3D::Q3DMouseEventPtr

### typedef Qt3D::Q3DWheelEventPtr

### typedef Qt3D::QAbstractBufferPtr

### typedef Qt3D::QAspectJobPtr

### typedef Qt3D::QBackendNodeFunctorPtr

### typedef Qt3D::QBackendScenePropertyChangePtr

### typedef Qt3D::QComponentList

### typedef Qt3D::QNodeList

### typedef Qt3D::QNodePtr

### typedef Qt3D::QObservableList

### typedef Qt3D::QQueryHandle

### typedef Qt3D::QSceneChangeList

### typedef Qt3D::QSceneChangePtr

### typedef Qt3D::QScenePropertyChangePtr

## Function Documentation

### Qt3D::PropertyChangeHandler(Receiver * receiver, QObject * parent)

### QHandle<T, INDEXBITS> Qt3D::acquire(T * d)

### void Qt3D::connectToPropertyChange(const QObject * object, int propertyIndex)

### const T * Qt3D::constData(const QHandle<T, INDEXBITS> & handle, bool * ok) const

### T * Qt3D::data(const QHandle<T, INDEXBITS> & handle, bool * ok)

### void Qt3D::disconnectFromPropertyChange(const QObject * object, int propertyIndex)

### qintptr Qt3D::functorTypeId()

### bool Qt3D::intersects(const QAxisAlignedBoundingBox & a, const QAxisAlignedBoundingBox & b)

### uint Qt3D::qHash(const QNodeId & id, uint seed = 0)

### int Qt3D::qt_metacall(QMetaObject::Call call, int methodId, void ** args)

### void Qt3D::registerBackendType(const QBackendNodeFunctorPtr & functor)

### void Qt3D::release(const QHandle<T, INDEXBITS> & handle)

### void Qt3D::reset()

### void Qt3D::swap(QCircularBuffer<T> & lhs, QCircularBuffer<T> & rhs)

Swaps the contents of the circular buffer lhs with the contents of rhs.

### void Qt3D::update(const QHandle<T, INDEXBITS> & handle, T * d)

### bool Qt3D::operator!=(const Dependency & left, const Dependency & right)

### bool Qt3D::operator!=(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns true if the circular buffer lhs is not equal to rhs; otherwise returns false.

Two circular buffers are considered equal if they contain the same values in the same order and have the same capacity.

This function requires the value type to have an implementation of `operator==()`.

See also operator==().

### QCircularBuffer<T> Qt3D::operator+(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns a circular buffer object with capacity of lhs.size() + rhs.size() containing the items from lhs followed by the items from rhs.

See also Qt3D::QCircularBuffer::operator+=().

### bool Qt3D::operator<(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns true if lhs is lexographically less than rhs. This is equivalent to calling `return std::lexicographical_compare(lhs.begin(), lhs.end(), rhs.begin(), rhs.end())`.

### QDebug Qt3D::operator<<(QDebug dbg, const QAxisAlignedBoundingBox & c)

### QDebug Qt3D::operator<<(QDebug d, const QNodeId & id)

### QDebug Qt3D::operator<<(QDebug dbg, const Qt3D::QRay3D & ray)

### QDataStream & Qt3D::operator<<(QDataStream & stream, const Qt3D::QRay3D & ray)

### QDebug Qt3D::operator<<(QDebug dbg, const QHandle<T, INDEXBITS> & h)

### bool Qt3D::operator<=(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns true if lhs is lexographically less than or equal to rhs.

### bool Qt3D::operator==(const Dependency & left, const Dependency & right)

### bool Qt3D::operator==(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns true if the circular buffer lhs is equal to rhs; otherwise returns false.

Two circular buffers are considered equal if they contain the same values in the same order and have the same capacity.

This function requires the value type to have an implementation of `operator==()`.

See also operator!=().

### bool Qt3D::operator>(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns true if rhs is lexographically less than lhs.

### bool Qt3D::operator>=(const QCircularBuffer<T> & lhs, const QCircularBuffer<T> & rhs)

Returns true if lhs is lexographically less than or equal to rhs.

### QDataStream & Qt3D::operator>>(QDataStream & stream, Qt3D::QRay3D & ray)