summaryrefslogtreecommitdiffstats
path: root/src/render/renderers/opengl/renderer/renderer_p.h
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2018-03-08 15:23:35 +0100
committerMike Krus <mike.krus@kdab.com>2020-02-03 14:50:26 +0000
commitf1f387c22dac8748a7edb1f4aa1ea6dac7dfbdfd (patch)
tree07f6c5a7663035a51e4b37ccac5e8e68a3a2f2c7 /src/render/renderers/opengl/renderer/renderer_p.h
parent1e2f6baf6bdcc647b40d346040b8383cf81a2ef3 (diff)
ResourceAccessor: make it work with the modular renderer architecture
This makes Scene2D work again. Tests restored as well. Change-Id: I4082d362c999a674be2debc297d59075f4b7c9e9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/render/renderers/opengl/renderer/renderer_p.h')
-rw-r--r--src/render/renderers/opengl/renderer/renderer_p.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/render/renderers/opengl/renderer/renderer_p.h b/src/render/renderers/opengl/renderer/renderer_p.h
index 557089b19..e8929e67a 100644
--- a/src/render/renderers/opengl/renderer/renderer_p.h
+++ b/src/render/renderers/opengl/renderer/renderer_p.h
@@ -155,6 +155,7 @@ class PickEventFilter;
class NodeManagers;
class GLResourceManagers;
class GLShader;
+class ResourceAccessor;
class UpdateLevelOfDetailJob;
typedef QSharedPointer<UpdateLevelOfDetailJob> UpdateLevelOfDetailJobPtr;
@@ -285,7 +286,15 @@ public:
bool requiresVAOAttributeUpdate(Geometry *geometry,
const RenderCommand *command) const;
+ // For Scene2D rendering
void setOpenGLContext(QOpenGLContext *context) override;
+ bool accessOpenGLTexture(Qt3DCore::QNodeId nodeId,
+ QOpenGLTexture **texture,
+ QMutex **lock,
+ bool readonly) override;
+ QSharedPointer<RenderBackendResourceAccessor> resourceAccessor() const override;
+
+
const GraphicsApiFilterData *contextInfo() const;
SubmissionContext *submissionContext() const;
@@ -451,6 +460,7 @@ private:
QVector<FrameGraphNode *> m_frameGraphLeaves;
QScreen *m_screen = nullptr;
+ QSharedPointer<ResourceAccessor> m_scene2DResourceAccessor;
Debug::ImGuiRenderer *m_imGuiRenderer;
QList<QPair<QObject *, QMouseEvent>> m_frameMouseEvents;