QAspectJob Class
class Qt3DCore::QAspectJobThe base class for jobs executed in an aspect. More...
Header: | #include <Qt3DCore/QAspectJob> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3DCore) target_link_libraries(mytarget PRIVATE Qt6::3DCore) |
qmake: | QT += 3dcore |
Public Functions
void | addDependency(QWeakPointer<Qt3DCore::QAspectJob> dependency) |
const std::vector<QWeakPointer<Qt3DCore::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<Qt3DCore::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.