QAbstractAspect Class▲
-
Header: Qt3DCore/QAbstractAspect
-
Since: Qt 5.7
-
CMake:
find_package(Qt6 REQUIRED COMPONENTS 3dcore)
target_link_libraries(mytarget PRIVATE Qt6::3dcore)
-
qmake: QT += 3dcore
-
Inherits: QObject
-
Inherited By: Qt3DAnimation::QAnimationAspect, Qt3DInput::QInputAspect, Qt3DLogic::QLogicAspect, and Qt3DRender::QRenderAspect
Detailed Description▲
Member Function Documentation▲
[explicit] QAbstractAspect::QAbstractAspect(QObject *parent = nullptr)▲
Constructs a new QAbstractAspect with parent
[protected] void QAbstractAspect::registerBackendType(const Qt3DCore::QBackendNodeMapperPtr &functor)▲
Registers backend with functor.
[protected] void QAbstractAspect::registerBackendType(const QMetaObject &obj, const Qt3DCore::QBackendNodeMapperPtr &functor)▲
Registers backend with obj and functor.
[protected] Qt3DCore::QNodeId QAbstractAspect::rootEntityId() const▲
Returns root entity node id.
Related Non-Members▲
QAspectJobPtr▲
A shared pointer for QAspectJob.
QBackendNodeMapperPtr▲
A shared pointer for QBackendNodeMapper.
Macro Documentation▲
QT3D_REGISTER_ASPECT(name, AspectType)▲
Convenience macro for registering AspectType for instantiation by the currently set Qt3DCore::QAspectFactory. This makes it possible to create an instance of AspectType in the aspect thread by later passing name to Qt3DCore::QAspectEngine::registerAspect(const QString &name).
It is also possible to register a new aspect without using this macro by instead using Qt3DCore::QAspectEngine::registerAspect(QAbstractAspect *aspect) which will handle moving a previously created aspect instance to the aspect thread context.
KDAB has published a few articles about writing custom Qt3D aspects on their blog. These provide an excellent starting point if you wish to learn more about it.