summaryrefslogtreecommitdiffstats
path: root/src/core/qscene.cpp
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2017-02-16 15:20:34 +0000
committerPaul Lemire <paul.lemire@kdab.com>2017-02-23 15:26:36 +0000
commit17826d9e889bbb9f3795e824c5fd2ac299c9e9b3 (patch)
tree8792fb90894431974b5e32a838a907a323835f70 /src/core/qscene.cpp
parentb8d176cf8cdc62b24075743b72b3c8a661d510c0 (diff)
QDistanceFieldGlyphCache cleanup
-made QDistanceFieldGlyphCache and QTextureAtlas private -remove dptr on QDistanceFieldGlyphCache -use a static hash on glyphCaches based on current scene being used -QTextureAtlas parented by scene root node Task-number: QTBUG-58881 Change-Id: If51d7dfe75e4233b9e7a36473c71fe530247aef7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/core/qscene.cpp')
-rw-r--r--src/core/qscene.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/core/qscene.cpp b/src/core/qscene.cpp
index 972659131..1fcfeaac7 100644
--- a/src/core/qscene.cpp
+++ b/src/core/qscene.cpp
@@ -55,6 +55,7 @@ public:
QScenePrivate(QAspectEngine *engine)
: m_engine(engine)
, m_arbiter(nullptr)
+ , m_rootNode(nullptr)
{
}
@@ -67,6 +68,7 @@ public:
QLockableObserverInterface *m_arbiter;
mutable QReadWriteLock m_lock;
mutable QReadWriteLock m_nodePropertyTrackModeLock;
+ QNode *m_rootNode;
};
@@ -171,6 +173,12 @@ QNodeId QScene::nodeIdFromObservable(QObservableInterface *observable) const
return d->m_observableToUuid.value(observable);
}
+QNode *QScene::rootNode() const
+{
+ Q_D(const QScene);
+ return d->m_rootNode;
+}
+
void QScene::setArbiter(QLockableObserverInterface *arbiter)
{
Q_D(QScene);
@@ -236,6 +244,12 @@ void QScene::removePropertyTrackDataForNode(QNodeId nodeId)
d->m_nodePropertyTrackModeLookupTable.remove(nodeId);
}
+void QScene::setRootNode(QNode *root)
+{
+ Q_D(QScene);
+ d->m_rootNode = root;
+}
+
} // Qt3D
QT_END_NAMESPACE