summaryrefslogtreecommitdiffstats
path: root/src/core/aspects/qaspectengine_p.h
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2014-09-02 12:30:39 +0200
committerSean Harmer <sean.harmer@kdab.com>2014-09-15 12:36:41 +0200
commitace4c69538cc6f5bc22f51fe41edaa3dddb28a16 (patch)
tree620d3064607a7432c3c73e880e53cc5b167d001a /src/core/aspects/qaspectengine_p.h
parente934fa27483dbc0e2648ab290a4124599f414609 (diff)
QAspectEngine QNode lookup table
QNode now contains an instance of the QAspectEngine. When the scene is first created, all nodes are traversed and inserted in a table referenced by their uuid. When new nodes are added at runtine, QNode::addChild takes care of inserting the new node into the QAspectEngine's table. The same applies for QNode::removeChild. QNode now also has a isCloned() method. QFrontendSceneObserver has a pointer to the QAspectEngine. QFrontendSceneObserver will need to check in the QAspectEngine's table if a node is available to receive the notification when sceneUpdated is called. Change-Id: Ic243261ecff5e15f841ca180cb97ba65df2b3bfb Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/core/aspects/qaspectengine_p.h')
-rw-r--r--src/core/aspects/qaspectengine_p.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/core/aspects/qaspectengine_p.h b/src/core/aspects/qaspectengine_p.h
index 67c7d8b58..b942ae121 100644
--- a/src/core/aspects/qaspectengine_p.h
+++ b/src/core/aspects/qaspectengine_p.h
@@ -45,11 +45,14 @@
#include <private/qobject_p.h>
#include <QMutex>
#include <QWaitCondition>
+#include <QUuid>
+#include <QHash>
QT_BEGIN_NAMESPACE
namespace Qt3D {
+class QNode;
class QAspectEngine;
class QAspectThread;
class QFrontendSceneObserver;
@@ -63,6 +66,7 @@ public:
QAspectThread *m_aspectThread;
QFrontendSceneObserver *m_frontendSceneObserver;
+ QHash<QUuid, QNode *> m_nodeLookups;
};
} // Qt3D