From fee719488d0476e1a64bf34672ea8715fb67131a Mon Sep 17 00:00:00 2001 From: assiduous Date: Tue, 23 Feb 2021 22:10:08 -0800 Subject: Added IShaderResourceBinding::StaticResourcesInitialized method --- .../GraphicsEngine/include/ShaderResourceBindingBase.hpp | 8 ++++---- Graphics/GraphicsEngine/interface/ShaderResourceBinding.h | 15 +++++++++------ 2 files changed, 13 insertions(+), 10 deletions(-) (limited to 'Graphics/GraphicsEngine') diff --git a/Graphics/GraphicsEngine/include/ShaderResourceBindingBase.hpp b/Graphics/GraphicsEngine/include/ShaderResourceBindingBase.hpp index 060ccfce..20550786 100644 --- a/Graphics/GraphicsEngine/include/ShaderResourceBindingBase.hpp +++ b/Graphics/GraphicsEngine/include/ShaderResourceBindingBase.hpp @@ -100,14 +100,14 @@ public: return GetSignature(); } - ResourceSignatureType* GetSignature() const + virtual bool DILIGENT_CALL_TYPE StaticResourcesInitialized() const override final { - return m_pPRS.RawPtr(); + return m_bStaticResourcesInitialized; } - bool StaticResourcesInitialized() const + ResourceSignatureType* GetSignature() const { - return m_bStaticResourcesInitialized; + return m_pPRS.RawPtr(); } void SetStaticResourcesInitialized() diff --git a/Graphics/GraphicsEngine/interface/ShaderResourceBinding.h b/Graphics/GraphicsEngine/interface/ShaderResourceBinding.h index 0078926c..96e24276 100644 --- a/Graphics/GraphicsEngine/interface/ShaderResourceBinding.h +++ b/Graphics/GraphicsEngine/interface/ShaderResourceBinding.h @@ -119,6 +119,9 @@ DILIGENT_BEGIN_INTERFACE(IShaderResourceBinding, IObject) VIRTUAL IShaderResourceVariable* METHOD(GetVariableByIndex)(THIS_ SHADER_TYPE ShaderType, Uint32 Index) PURE; + + /// Returns true if static resources have been initialized in this SRB. + VIRTUAL bool METHOD(StaticResourcesInitialized)(THIS) CONST PURE; }; DILIGENT_END_INTERFACE @@ -128,12 +131,12 @@ DILIGENT_END_INTERFACE // clang-format off -//# define IShaderResourceBinding_GetPipelineState(This) CALL_IFACE_METHOD(ShaderResourceBinding, GetPipelineState, This) -# define IShaderResourceBinding_GetPipelineResourceSignature(This) CALL_IFACE_METHOD(ShaderResourceBinding, GetPipelineResourceSignature, This) -# define IShaderResourceBinding_BindResources(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, BindResources, This, __VA_ARGS__) -# define IShaderResourceBinding_GetVariableByName(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, GetVariableByName, This, __VA_ARGS__) -# define IShaderResourceBinding_GetVariableCount(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, GetVariableCount, This, __VA_ARGS__) -# define IShaderResourceBinding_GetVariableByIndex(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, GetVariableByIndex, This, __VA_ARGS__) +# define IShaderResourceBinding_GetPipelineResourceSignature(This) CALL_IFACE_METHOD(ShaderResourceBinding, GetPipelineResourceSignature, This) +# define IShaderResourceBinding_BindResources(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, BindResources, This, __VA_ARGS__) +# define IShaderResourceBinding_GetVariableByName(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, GetVariableByName, This, __VA_ARGS__) +# define IShaderResourceBinding_GetVariableCount(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, GetVariableCount, This, __VA_ARGS__) +# define IShaderResourceBinding_GetVariableByIndex(This, ...) CALL_IFACE_METHOD(ShaderResourceBinding, GetVariableByIndex, This, __VA_ARGS__) +# define IShaderResourceBinding_StaticResourcesInitialized(This) CALL_IFACE_METHOD(ShaderResourceBinding, StaticResourcesInitialized, This) // clang-format on -- cgit v1.2.3