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.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qt3dcore-qaspectjob.html