summaryrefslogtreecommitdiffstats
path: root/src/render/backend/nodemanagers_p.h
diff options
context:
space:
mode:
authorKevin Ottens <kevin.ottens@kdab.com>2017-05-03 12:18:29 +0200
committerSean Harmer <sean.harmer@kdab.com>2017-07-05 13:39:57 +0000
commit9be21b6070fc55bf317a40f82a82f20153758905 (patch)
tree33ee127da5af170f657a7a424632c94b26a723f4 /src/render/backend/nodemanagers_p.h
parentd81d4781431de1d1a02dc727d0bada620c6ee8e8 (diff)
Introduce ShaderBuilder
This is the backend counterpart to QShaderProgramBuilder. For now only provides the basic registration and handling of properties. The code generation part and its integration in the rendering will follow in the next commits. Change-Id: Iae57b3e8f0d54f5c24c541934655697937045847 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/backend/nodemanagers_p.h')
-rw-r--r--src/render/backend/nodemanagers_p.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/render/backend/nodemanagers_p.h b/src/render/backend/nodemanagers_p.h
index 9e913eec4..04fbad475 100644
--- a/src/render/backend/nodemanagers_p.h
+++ b/src/render/backend/nodemanagers_p.h
@@ -76,6 +76,7 @@ class MaterialManager;
class MatrixManager;
class VAOManager;
class ShaderManager;
+class ShaderBuilderManager;
class TechniqueManager;
class EffectManager;
class RenderPassManager;
@@ -105,6 +106,7 @@ class Entity;
class CameraLens;
class Material;
class Shader;
+class ShaderBuilder;
class Technique;
class Effect;
class RenderPass;
@@ -181,6 +183,7 @@ public:
inline MatrixManager *worldMatrixManager() const Q_DECL_NOEXCEPT { return m_worldMatrixManager; }
inline VAOManager *vaoManager() const Q_DECL_NOEXCEPT { return m_vaoManager; }
inline ShaderManager *shaderManager() const Q_DECL_NOEXCEPT { return m_shaderManager; }
+ inline ShaderBuilderManager *shaderBuilderManager() const Q_DECL_NOEXCEPT { return m_shaderBuilderManager; }
inline TechniqueManager *techniqueManager() const Q_DECL_NOEXCEPT { return m_techniqueManager; }
inline EffectManager *effectManager() const Q_DECL_NOEXCEPT { return m_effectManager; }
inline RenderPassManager *renderPassManager() const Q_DECL_NOEXCEPT { return m_renderPassManager; }
@@ -220,6 +223,7 @@ private:
MatrixManager *m_worldMatrixManager;
VAOManager *m_vaoManager;
ShaderManager *m_shaderManager;
+ ShaderBuilderManager *m_shaderBuilderManager;
TechniqueManager *m_techniqueManager;
EffectManager *m_effectManager;
RenderPassManager *m_renderPassManager;
@@ -274,6 +278,9 @@ template<>
QT3DRENDERSHARED_PRIVATE_EXPORT ShaderManager *NodeManagers::manager<Shader>() const Q_DECL_NOEXCEPT;
template<>
+QT3DRENDERSHARED_PRIVATE_EXPORT ShaderBuilderManager *NodeManagers::manager<ShaderBuilder>() const Q_DECL_NOEXCEPT;
+
+template<>
QT3DRENDERSHARED_PRIVATE_EXPORT TechniqueManager *NodeManagers::manager<Technique>() const Q_DECL_NOEXCEPT;
template<>