QAspectJob Class

class Qt3DCore::QAspectJob

The base class for jobs executed in an aspect. More...

Header: #include <Qt3DCore/QAspectJob>
CMake: find_package(Qt6 COMPONENTS 3dcore REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::3dcore)
qmake: QT += 3dcore

Public Functions

void addDependency(QWeakPointer<Qt3DCore::QAspectJob> dependency)
const std::vector<QWeakPointer<QAspectJob> > &dependencies() const
virtual bool isRequired()
virtual void postFrame(Qt3DCore::QAspectEngine *aspectEngine)
void removeDependency(QWeakPointer<Qt3DCore::QAspectJob> dependency)
virtual void run() = 0

Detailed Description

Member Function Documentation

void QAspectJob::addDependency(QWeakPointer<Qt3DCore::QAspectJob> dependency)

Adds dependency to the aspect job.

const std::vector<QWeakPointer<QAspectJob> > &QAspectJob::dependencies() const

Returns the dependencies of the aspect job.

[virtual] bool QAspectJob::isRequired()

Should return true (default) if the job has actually something to do. If returning false, the job will not be scheduled (but it's dependencies will be).

[virtual] void QAspectJob::postFrame(Qt3DCore::QAspectEngine *aspectEngine)

Called in the main thread when all the jobs have completed. This is a good point to push changes back to the frontend. aspectEngine is the engine responsible for the run loop.

void QAspectJob::removeDependency(QWeakPointer<Qt3DCore::QAspectJob> dependency)

Removes the given dependency from aspect job.

[pure virtual] void QAspectJob::run()

Executes the job. This is called on a separate thread by the scheduler.

© 2021 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.