summaryrefslogtreecommitdiffstats
path: root/tests/auto/render/commons
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2020-03-04 12:59:48 +0000
committerMike Krus <mike.krus@kdab.com>2020-03-06 08:25:31 +0000
commit0d5a9ebc01a584ab4364e825a3d8a5dabd2ffd8b (patch)
tree14c9cf2ec23296160f1cb30ddcd5586e5fca159f /tests/auto/render/commons
parent76b39dd90f613f340066cc5a4ceed65ff778bdd4 (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/auto/render/commons')
-rw-r--r--tests/auto/render/commons/commons.pri2
-rw-r--r--tests/auto/render/commons/testaspect.cpp5
-rw-r--r--tests/auto/render/commons/testaspect.h1
-rw-r--r--tests/auto/render/commons/testrenderer.cpp4
-rw-r--r--tests/auto/render/commons/testrenderer.h20
5 files changed, 19 insertions, 13 deletions
diff --git a/tests/auto/render/commons/commons.pri b/tests/auto/render/commons/commons.pri
index 6f4382a0b..1c6645f8d 100644
--- a/tests/auto/render/commons/commons.pri
+++ b/tests/auto/render/commons/commons.pri
@@ -6,7 +6,7 @@ HEADERS += \
useCommonTestAspect {
SOURCES += $$PWD/testaspect.cpp
- SOURCES += $$PWD/testaspect.h
+ HEADERS += $$PWD/testaspect.h
}
INCLUDEPATH += $$PWD
diff --git a/tests/auto/render/commons/testaspect.cpp b/tests/auto/render/commons/testaspect.cpp
index 87ffc56d7..086d79bb6 100644
--- a/tests/auto/render/commons/testaspect.cpp
+++ b/tests/auto/render/commons/testaspect.cpp
@@ -95,6 +95,11 @@ Render::NodeManagers *TestAspect::nodeManagers() const
return d_func()->m_renderer->nodeManagers();
}
+void TestAspect::onEngineStartup()
+{
+ QRenderAspect::onEngineStartup();
+}
+
void TestAspect::onRegistered()
{
QRenderAspect::onRegistered();
diff --git a/tests/auto/render/commons/testaspect.h b/tests/auto/render/commons/testaspect.h
index a0da98721..dfbe78fbd 100644
--- a/tests/auto/render/commons/testaspect.h
+++ b/tests/auto/render/commons/testaspect.h
@@ -56,6 +56,7 @@ public:
Qt3DRender::Render::NodeManagers *nodeManagers() const;
+ void onEngineStartup();
void onRegistered();
void onUnregistered();
diff --git a/tests/auto/render/commons/testrenderer.cpp b/tests/auto/render/commons/testrenderer.cpp
index 5a36fecf2..45713e9b9 100644
--- a/tests/auto/render/commons/testrenderer.cpp
+++ b/tests/auto/render/commons/testrenderer.cpp
@@ -38,7 +38,7 @@ TestRenderer::~TestRenderer()
void TestRenderer::markDirty(Qt3DRender::Render::AbstractRenderer::BackendNodeDirtySet changes, Qt3DRender::Render::BackendNode *node)
{
- Q_UNUSED(node);
+ Q_UNUSED(node)
m_changes |= changes;
}
@@ -50,7 +50,7 @@ Qt3DRender::Render::AbstractRenderer::BackendNodeDirtySet TestRenderer::dirtyBit
#if defined(QT_BUILD_INTERNAL)
void TestRenderer::clearDirtyBits(Qt3DRender::Render::AbstractRenderer::BackendNodeDirtySet changes)
{
- m_changes &= changes;
+ m_changes &= ~changes;
}
#endif
diff --git a/tests/auto/render/commons/testrenderer.h b/tests/auto/render/commons/testrenderer.h
index 7b3e0a387..8d5d87a98 100644
--- a/tests/auto/render/commons/testrenderer.h
+++ b/tests/auto/render/commons/testrenderer.h
@@ -43,15 +43,17 @@ public:
void dumpInfo() const override {}
API api() const override { return AbstractRenderer::OpenGL; }
qint64 time() const override { return 0; }
- void setTime(qint64 time) override { Q_UNUSED(time); }
+ void setTime(qint64 time) override { Q_UNUSED(time) }
+ void setAspect(Qt3DRender::QRenderAspect *aspect) override { m_aspect = aspect; }
void setNodeManagers(Qt3DRender::Render::NodeManagers *m) override
{
m_managers = m;
m_resourceAccessor.reset(new Qt3DRender::Render::ResourceAccessor(this, m_managers));
}
- void setServices(Qt3DCore::QServiceLocator *services) override { Q_UNUSED(services); }
- void setSurfaceExposed(bool exposed) override { Q_UNUSED(exposed); }
+ void setServices(Qt3DCore::QServiceLocator *services) override { Q_UNUSED(services) }
+ void setSurfaceExposed(bool exposed) override { Q_UNUSED(exposed) }
void setJobsInLastFrame(int jobsInLastFrame) override { Q_UNUSED(jobsInLastFrame) }
+ Qt3DRender::QRenderAspect *aspect() const override { return m_aspect; }
Qt3DRender::Render::NodeManagers *nodeManagers() const override { return m_managers; }
Qt3DCore::QServiceLocator *services() const override { return nullptr; }
void initialize() override {}
@@ -66,17 +68,13 @@ public:
void jobsDone(Qt3DCore::QAspectManager *manager) override { Q_UNUSED(manager) }
QVector<Qt3DCore::QAspectJobPtr> preRenderingJobs() override { return QVector<Qt3DCore::QAspectJobPtr>(); }
QVector<Qt3DCore::QAspectJobPtr> renderBinJobs() override { return QVector<Qt3DCore::QAspectJobPtr>(); }
- Qt3DCore::QAspectJobPtr pickBoundingVolumeJob() override { return Qt3DCore::QAspectJobPtr(); }
- Qt3DCore::QAspectJobPtr rayCastingJob() override { return Qt3DCore::QAspectJobPtr(); }
- Qt3DCore::QAspectJobPtr syncLoadingJobs() override { return Qt3DCore::QAspectJobPtr(); }
- Qt3DCore::QAspectJobPtr expandBoundingVolumeJob() override { return Qt3DCore::QAspectJobPtr(); }
void setSceneRoot(Qt3DRender::Render::Entity *root) override { Q_UNUSED(root) }
Qt3DRender::Render::Entity *sceneRoot() const override { return nullptr; }
Qt3DRender::Render::FrameGraphNode *frameGraphRoot() const override { return nullptr; }
Qt3DCore::QAbstractFrameAdvanceService *frameAdvanceService() const override { return nullptr; }
- void registerEventFilter(Qt3DCore::QEventFilterService *service) override { Q_UNUSED(service) }
- void setSettings(Qt3DRender::Render::RenderSettings *settings) override { Q_UNUSED(settings) }
- Qt3DRender::Render::RenderSettings *settings() const override { return nullptr; }
+ void setSettings(Qt3DRender::Render::RenderSettings *settings) override { m_settings = settings; }
+ Qt3DRender::Render::RenderSettings *settings() const override { return m_settings; }
+ void setPendingEvents(const QList<QPair<QObject *, QMouseEvent> > &, const QList<QKeyEvent> &) override { }
void markDirty(Qt3DRender::Render::AbstractRenderer::BackendNodeDirtySet changes, Qt3DRender::Render::BackendNode *node) override;
Qt3DRender::Render::AbstractRenderer::BackendNodeDirtySet dirtyBits() override;
@@ -99,8 +97,10 @@ public:
protected:
Qt3DRender::Render::AbstractRenderer::BackendNodeDirtySet m_changes;
+ Qt3DRender::QRenderAspect *m_aspect = nullptr;
Qt3DRender::Render::NodeManagers *m_managers = nullptr;
QSharedPointer<Qt3DRender::Render::ResourceAccessor> m_resourceAccessor;
+ Qt3DRender::Render::RenderSettings *m_settings = nullptr;
};
QT_END_NAMESPACE