diff options
Diffstat (limited to 'src/core/aspects/qaspectmanager_p.h')
-rw-r--r-- | src/core/aspects/qaspectmanager_p.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/core/aspects/qaspectmanager_p.h b/src/core/aspects/qaspectmanager_p.h index d9a6c41ec..2038e0822 100644 --- a/src/core/aspects/qaspectmanager_p.h +++ b/src/core/aspects/qaspectmanager_p.h @@ -73,15 +73,19 @@ class QScheduler; class QChangeArbiter; class QAbstractAspect; class QAbstractAspectJobManager; +class QAspectEngine; class QServiceLocator; class NodePostConstructorInit; struct NodeTreeChange; +#if QT_CONFIG(animation) +class RequestFrameAnimation; +#endif class Q_3DCORE_PRIVATE_EXPORT QAspectManager : public QObject { Q_OBJECT public: - explicit QAspectManager(QObject *parent = nullptr); + explicit QAspectManager(QAspectEngine *parent = nullptr); ~QAspectManager(); void setRunMode(QAspectEngine::RunMode mode); @@ -111,10 +115,15 @@ public: QNode *lookupNode(QNodeId id) const; QVector<QNode *> lookupNodes(const QVector<QNodeId> &ids) const; + int jobsInLastFrame() const { return m_jobsInLastFrame; } + private: +#if !QT_CONFIG(animation) bool event(QEvent *event) override; +#endif void requestNextFrame(); + QAspectEngine *m_engine; QVector<QAbstractAspect *> m_aspects; QEntity *m_root; QVariantMap m_data; @@ -122,12 +131,15 @@ private: QAbstractAspectJobManager *m_jobManager; QChangeArbiter *m_changeArbiter; QScopedPointer<QServiceLocator> m_serviceLocator; - bool m_mainLoopRunning; bool m_simulationLoopRunning; QAspectEngine::RunMode m_driveMode; QVector<NodeTreeChange> m_nodeTreeChanges; NodePostConstructorInit* m_postConstructorInit; +#if QT_CONFIG(animation) + RequestFrameAnimation *m_simulationAnimation; +#endif + int m_jobsInLastFrame; }; } // namespace Qt3DCore |