diff options
author | Kevin Ottens <kevin.ottens@kdab.com> | 2015-12-15 14:27:30 +0100 |
---|---|---|
committer | Kevin Ottens <kevin.ottens@kdab.com> | 2015-12-18 15:55:34 +0000 |
commit | a86a10924c97d0966cdbdf9e4db2fc94ed5f2d9a (patch) | |
tree | dc8fbbf63dc3188ffc6e06e3a1df3271e4370308 /src/render/backend | |
parent | b9905ee50f93942f71c2203ecbe73a82b11841c2 (diff) |
Move the time property to the renderer
Change-Id: I60adff0ece408bb4ee21b9cbd329e21da2c1f95c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/backend')
-rw-r--r-- | src/render/backend/abstractrenderer_p.h | 3 | ||||
-rw-r--r-- | src/render/backend/renderer.cpp | 11 | ||||
-rw-r--r-- | src/render/backend/renderer_p.h | 5 | ||||
-rw-r--r-- | src/render/backend/renderview.cpp | 2 |
4 files changed, 20 insertions, 1 deletions
diff --git a/src/render/backend/abstractrenderer_p.h b/src/render/backend/abstractrenderer_p.h index 11e5b0a37..d9126a4ed 100644 --- a/src/render/backend/abstractrenderer_p.h +++ b/src/render/backend/abstractrenderer_p.h @@ -83,6 +83,9 @@ public: virtual API api() const = 0; + virtual qint64 time() const = 0; + virtual void setTime(qint64 time) = 0; + virtual void setSurface(QSurface *surface) = 0; virtual void setNodeManagers(NodeManagers *managers) = 0; virtual void setQRenderAspect(Qt3DRender::QRenderAspect *renderAspect) = 0; diff --git a/src/render/backend/renderer.cpp b/src/render/backend/renderer.cpp index 999570511..a79ebdbad 100644 --- a/src/render/backend/renderer.cpp +++ b/src/render/backend/renderer.cpp @@ -144,6 +144,7 @@ Renderer::Renderer(QRenderAspect::RenderType type) , m_exposed(0) , m_glContext(Q_NULLPTR) , m_pickBoundingVolumeJob(Q_NULLPTR) + , m_time(0) { // Set renderer as running - it will wait in the context of the // RenderThread for RenderViews to be submitted @@ -156,6 +157,16 @@ Renderer::~Renderer() { } +qint64 Renderer::time() const +{ + return m_time; +} + +void Renderer::setTime(qint64 time) +{ + m_time = time; +} + NodeManagers *Renderer::nodeManagers() const { return m_nodesManager; diff --git a/src/render/backend/renderer_p.h b/src/render/backend/renderer_p.h index 105d45436..800efcf34 100644 --- a/src/render/backend/renderer_p.h +++ b/src/render/backend/renderer_p.h @@ -123,6 +123,9 @@ public: API api() const Q_DECL_OVERRIDE { return AbstractRenderer::OpenGL; } + qint64 time() const Q_DECL_OVERRIDE; + void setTime(qint64 time) Q_DECL_OVERRIDE; + void setSurface(QSurface *s) Q_DECL_OVERRIDE; void setNodeManagers(NodeManagers *managers) Q_DECL_OVERRIDE { m_nodesManager = managers; } void setQRenderAspect(QRenderAspect *aspect) Q_DECL_OVERRIDE { m_rendererAspect = aspect; } @@ -249,6 +252,8 @@ private: QAtomicInt m_exposed; QOpenGLContext *m_glContext; PickBoundingVolumeJobPtr m_pickBoundingVolumeJob; + + qint64 m_time; }; } // namespace Render diff --git a/src/render/backend/renderview.cpp b/src/render/backend/renderview.cpp index 12e18633a..e630e7a8b 100644 --- a/src/render/backend/renderview.cpp +++ b/src/render/backend/renderview.cpp @@ -254,7 +254,7 @@ QUniformValue *RenderView::inverseViewportMatrix(const QMatrix4x4 &model) const QUniformValue *RenderView::time(const QMatrix4x4 &model) const { Q_UNUSED(model); - qint64 time = m_renderer->renderAspect()->time(); + qint64 time = m_renderer->time(); float t = time / 1000000000.0f; return QUniformValue::fromVariant(QVariant(t), m_allocator); } |