Template class implementing base functionality of the pipeline state object. More...
#include <PipelineStateBase.hpp>
Public Member Functions | |
template<typename PSOCreateInfoType> | |
PipelineStateBase (IReferenceCounters *pRefCounters, RenderDeviceImplType *pDevice, const PSOCreateInfoType &CreateInfo, bool bIsDeviceInternal=false) | |
Initializes the object as a specific pipeline. | |
virtual Uint32 DILIGENT_CALL_TYPE | GetResourceSignatureCount () const override final |
Implementation of IPipelineState::GetResourceSignatureCount(). | |
virtual PipelineResourceSignatureImplType *DILIGENT_CALL_TYPE | GetResourceSignature (Uint32 Index) const override final |
Implementation of IPipelineState::GetResourceSignature(). | |
virtual bool DILIGENT_CALL_TYPE | IsCompatibleWith (const IPipelineState *pPSO) const override |
Implementation of IPipelineState::IsCompatibleWith(). | |
![]() | |
DeviceObjectBase (IReferenceCounters *pRefCounters, RenderDeviceImplType *pDevice, const PipelineStateDesc &ObjDesc, bool bIsDeviceInternal=false) | |
virtual Int32 DILIGENT_CALL_TYPE | GetUniqueID () const override final |
Returns unique identifier. | |
virtual void DILIGENT_CALL_TYPE | SetUserData (IObject *pUserData) override final |
Implementation of IDeviceObject::SetUserData. | |
virtual IObject *DILIGENT_CALL_TYPE | GetUserData () const override final |
Implementation of IDeviceObject::GetUserData. | |
Protected Types | |
using | SignatureAutoPtrType = RefCntAutoPtr<PipelineResourceSignatureImplType> |
Resource signatures arranged by their binding indices. | |
Protected Attributes | |
SHADER_TYPE | m_ActiveShaderStages = SHADER_TYPE_UNKNOWN |
Shader stages that are active in this PSO. | |
const bool | m_UsingImplicitSignature |
True if the pipeline was created using implicit root signature. | |
Uint8 | m_SignatureCount = 0 |
![]() | |
RenderDeviceImplType *const | m_pDevice |
Pointer to the device. | |
PipelineStateDesc | m_Desc |
Object description. | |
Template class implementing base functionality of the pipeline state object.
EngineImplTraits | - Engine implementation type traits. |
|
inline |
Initializes the object as a specific pipeline.
PSOCreateInfoType | - Pipeline state create info type (GraphicsPipelineStateCreateInfo, ComputePipelineStateCreateInfo, etc.) |
pRefCounters | - Reference counters object that controls the lifetime of this PSO |
pDevice | - Pointer to the device. |
CreateInfo | - Pipeline state create info. |
bIsDeviceInternal | - Flag indicating if the pipeline state is an internal device object and must not keep a strong reference to the device. |
|
protected |
The number of signatures in m_Signatures array. Note that this is not necessarily the same as the number of signatures that were used to create the pipeline, because signatures are arranged by their binding index.