template<typename EngineImplTraits>
ShaderResourceBindingBase class
Template class implementing base functionality of the shader resource binding.
| Template parameters | |
|---|---|
| EngineImplTraits | - Engine implementation type traits. |
Contents
Base classes
-
template<typename BaseInterface>class ObjectBase<EngineImplTraits::ShaderResourceBindingInterface>
- Template class implementing base functionality for an object.
Constructors, destructors, conversion operators
- ShaderResourceBindingBase(IReferenceCounters* pRefCounters, ResourceSignatureType* pPRS)
Public functions
- auto GetPipelineResourceSignature() const -> IPipelineResourceSignature* final
- Implementation of IShaderResourceBinding::
GetPipelineResourceSignature(). -
auto GetVariableByName(SHADER_
TYPE ShaderType, const char* Name) -> IShaderResourceVariable* final - Implementation of IShaderResourceBinding::
GetVariableByName(). -
auto GetVariableCount(SHADER_
TYPE ShaderType) const -> Uint32 final - Implementation of IShaderResourceBinding::
GetVariableCount(). -
auto GetVariableByIndex(SHADER_
TYPE ShaderType, Uint32 Index) -> IShaderResourceVariable* final - Implementation of IShaderResourceBinding::
GetVariableByIndex(). - void BindResources(Uint32 ShaderFlags, IResourceMapping* pResMapping, Uint32 Flags) final
- Implementation of IShaderResourceBinding::
BindResources().
Protected variables
- RefCntAutoPtr<ResourceSignatureType> m_pPRS
- Strong reference to pipeline resource signature. We must use strong reference, because shader resource binding uses pipeline resource signature's memory allocator to allocate memory for shader resource cache.
Function documentation
template<typename EngineImplTraits>
Diligent:: ShaderResourceBindingBase<EngineImplTraits>:: ShaderResourceBindingBase(IReferenceCounters* pRefCounters,
ResourceSignatureType* pPRS)
| Parameters | |
|---|---|
| pRefCounters | - Reference counters object that controls the lifetime of this SRB. |
| pPRS | - Pipeline resource signature that this SRB belongs to. |