QAbstractAspect Classclass Qt3DCore::QAbstractAspect
QAbstractAspect is the base class for aspects that provide a vertical slice of behavior. More...
|qmake:||QT += 3dcore|
|QAbstractAspect(QObject *parent = nullptr)|
|void||registerBackendType(const Qt3DCore::QBackendNodeMapperPtr &functor)|
|void||registerBackendType(const QMetaObject &obj, const Qt3DCore::QBackendNodeMapperPtr &functor)|
Member Function Documentation
QAbstractAspect::QAbstractAspect(QObject *parent = nullptr)
Constructs a new QAbstractAspect with parent
[protected] template <typename Frontend> 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.
A shared pointer for QAspectJob.
A shared pointer for QBackendNodeMapper.
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).
Note: 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.
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.