diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2019-08-30 11:41:18 +0200 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2019-09-16 10:39:23 +0200 |
commit | 6a9609f8956ccc528da8b7acee2d7a3d195b2b2d (patch) | |
tree | d12aef2a869a8572fb48163bc7db0def2c52abc5 /tests/benchmarks/render/jobs/tst_bench_jobs.cpp | |
parent | c89997143cd6e51916924b71c8b0bf8705480a67 (diff) |
Use direct access to remove backend nodes
- Stop using messages
- Remove QSceneObserverInterface
- Ensure backend node creation/destruction is done at the right time
Change-Id: I470825af344ab65bf05e93fc149b61d1b9eefc96
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'tests/benchmarks/render/jobs/tst_bench_jobs.cpp')
-rw-r--r-- | tests/benchmarks/render/jobs/tst_bench_jobs.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/tests/benchmarks/render/jobs/tst_bench_jobs.cpp b/tests/benchmarks/render/jobs/tst_bench_jobs.cpp index 35b7e0184..b611f3cdc 100644 --- a/tests/benchmarks/render/jobs/tst_bench_jobs.cpp +++ b/tests/benchmarks/render/jobs/tst_bench_jobs.cpp @@ -123,16 +123,21 @@ namespace Qt3DRender { void onRootEntityChanged(Qt3DCore::QEntity *root) { if (!m_window) { - QVector<Qt3DCore::QNode *> nodes; + QVector<Qt3DCore::NodeTreeChange> nodes; Qt3DCore::QNodeVisitor v; v.traverse(root, [&nodes](Qt3DCore::QNode *node) { Qt3DCore::QNodePrivate *d = Qt3DCore::QNodePrivate::get(node); d->m_typeInfo = const_cast<QMetaObject*>(Qt3DCore::QNodePrivate::findStaticMetaObject(node->metaObject())); d->m_hasBackendNode = true; - nodes << node; + nodes.push_back({ + node->id(), + Qt3DCore::QNodePrivate::get(node)->m_typeInfo, + Qt3DCore::NodeTreeChange::Added, + node + }); }); - for (const auto node: nodes) + for (const auto &node: nodes) d_func()->createBackendNode(node); static_cast<Qt3DRender::Render::Renderer *>(d_func()->m_renderer)->m_renderSceneRoot = |