summaryrefslogtreecommitdiffstats
path: root/src/render/io
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2016-08-10 12:49:41 +0200
committerPaul Lemire <paul.lemire@kdab.com>2016-08-19 07:59:20 +0000
commit2f2bc545182f27896a3654216f31db1170c5af12 (patch)
tree5cd360c46f577a49419db5ddea6450d4519ab33c /src/render/io
parentc8fa288cbd625013d5c302bb8bc687f4fd4fca51 (diff)
Scene: add cleanup method and export for tests
Change-Id: Ib4dd476078e993b0b61366772c1a9ae9319f919a Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
Diffstat (limited to 'src/render/io')
-rw-r--r--src/render/io/scene.cpp5
-rw-r--r--src/render/io/scene_p.h4
-rw-r--r--src/render/io/scenemanager_p.h2
3 files changed, 10 insertions, 1 deletions
diff --git a/src/render/io/scene.cpp b/src/render/io/scene.cpp
index b8f007b95..bfb5e4571 100644
--- a/src/render/io/scene.cpp
+++ b/src/render/io/scene.cpp
@@ -60,6 +60,11 @@ Scene::Scene()
{
}
+void Scene::cleanup()
+{
+ m_source.clear();
+}
+
void Scene::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change)
{
const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QSceneLoaderData>>(change);
diff --git a/src/render/io/scene_p.h b/src/render/io/scene_p.h
index f9513095b..fc3494489 100644
--- a/src/render/io/scene_p.h
+++ b/src/render/io/scene_p.h
@@ -66,7 +66,7 @@ namespace Render {
class SceneManager;
-class Scene : public BackendNode
+class Q_AUTOTEST_EXPORT Scene : public BackendNode
{
public:
Scene();
@@ -76,6 +76,8 @@ public:
void setSceneSubtree(Qt3DCore::QEntity *subTree);
void setSceneManager(SceneManager *manager);
+ void cleanup();
+
private:
void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL;
diff --git a/src/render/io/scenemanager_p.h b/src/render/io/scenemanager_p.h
index 35656730f..ff63b02e7 100644
--- a/src/render/io/scenemanager_p.h
+++ b/src/render/io/scenemanager_p.h
@@ -84,6 +84,8 @@ private:
} // namespace Render
} // namespace Qt3DRender
+Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Scene, Q_REQUIRES_CLEANUP)
+
QT_END_NAMESPACE
#endif // SCENEMANAGER_P_H