QAbstractAspect is the base class for aspects that provide a vertical slice of behavior. 更多...
头: | #include <Qt3DCore/QAbstractAspect> |
CMake: |
find_package(Qt6 COMPONENTS 3dcore REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::3dcore) |
qmake: | QT += 3dcore |
继承: | QObject |
继承者: | Qt3DAnimation::QAnimationAspect , Qt3DInput::QInputAspect , Qt3DLogic::QLogicAspect ,和 Qt3DRender::QRenderAspect |
QAbstractAspect (QObject * parent = nullptr) |
void | registerBackendType (const Qt3DCore::QBackendNodeMapperPtr & functor ) |
void | registerBackendType (const QMetaObject & obj , const Qt3DCore::QBackendNodeMapperPtr & functor ) |
Qt3DCore::QNodeId | rootEntityId () const |
QAspectJobPtr | |
QBackendNodeMapperPtr |
QT3D_REGISTER_ASPECT ( name , AspectType ) |
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.
共享指针为 QAspectJob .
共享指针为 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).
注意: 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.