diff options
author | Mike Krus <mike.krus@kdab.com> | 2020-03-04 12:59:48 +0000 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2020-03-06 08:25:31 +0000 |
commit | 0d5a9ebc01a584ab4364e825a3d8a5dabd2ffd8b (patch) | |
tree | 14c9cf2ec23296160f1cb30ddcd5586e5fca159f /tests/benchmarks/render/jobs/tst_bench_jobs.cpp | |
parent | 76b39dd90f613f340066cc5a4ceed65ff778bdd4 (diff) |
Move common job handling out of Renderer
Should be done in aspect as it's independent of the backend.
Moved some tests to separate test using an empty renderer as
other backends are likely to have different jobs.
Change-Id: I2bec0939045acea7b91ecb1622ba18bf9f5db3c6
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 | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/tests/benchmarks/render/jobs/tst_bench_jobs.cpp b/tests/benchmarks/render/jobs/tst_bench_jobs.cpp index 85b5e8c89..57bd7745d 100644 --- a/tests/benchmarks/render/jobs/tst_bench_jobs.cpp +++ b/tests/benchmarks/render/jobs/tst_bench_jobs.cpp @@ -87,20 +87,26 @@ namespace Qt3DRender { QVector<Qt3DCore::QAspectJobPtr> worldTransformJob() { - static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer)->m_worldTransformJob->setRoot(d_func()->m_renderer->sceneRoot()); - return QVector<Qt3DCore::QAspectJobPtr>() << static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer)->m_worldTransformJob; + auto renderer = static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer); + auto daspect = Qt3DRender::QRenderAspectPrivate::get(renderer->aspect()); + daspect->m_worldTransformJob->setRoot(d_func()->m_renderer->sceneRoot()); + return QVector<Qt3DCore::QAspectJobPtr>() << daspect->m_worldTransformJob; } QVector<Qt3DCore::QAspectJobPtr> updateBoundingJob() { - static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer)->m_updateWorldBoundingVolumeJob->setManager(d_func()->m_renderer->nodeManagers()->renderNodesManager()); - return QVector<Qt3DCore::QAspectJobPtr>() << static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer)->m_updateWorldBoundingVolumeJob; + auto renderer = static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer); + auto daspect = Qt3DRender::QRenderAspectPrivate::get(renderer->aspect()); + daspect->m_updateWorldBoundingVolumeJob->setManager(d_func()->m_renderer->nodeManagers()->renderNodesManager()); + return QVector<Qt3DCore::QAspectJobPtr>() << daspect->m_updateWorldBoundingVolumeJob; } QVector<Qt3DCore::QAspectJobPtr> calculateBoundingVolumeJob() { - static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer)->m_calculateBoundingVolumeJob->setRoot(d_func()->m_renderer->sceneRoot()); - return QVector<Qt3DCore::QAspectJobPtr>() << static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer)->m_calculateBoundingVolumeJob; + auto renderer = static_cast<Render::OpenGL::Renderer *>(d_func()->m_renderer); + auto daspect = Qt3DRender::QRenderAspectPrivate::get(renderer->aspect()); + daspect->m_calculateBoundingVolumeJob->setRoot(d_func()->m_renderer->sceneRoot()); + return QVector<Qt3DCore::QAspectJobPtr>() << daspect->m_calculateBoundingVolumeJob; } QVector<Qt3DCore::QAspectJobPtr> framePreparationJob() |