Exposes Direct3D12-specific functionality of a pipeline state object. More...
#include <PipelineStateD3D12.h>
Public Member Functions | |
virtual ID3D12PipelineState *DILIGENT_CALL_TYPE | GetD3D12PipelineState () const =0 |
Returns ID3D12PipelineState interface of the internal D3D12 pipeline state object object. | |
virtual ID3D12StateObject *DILIGENT_CALL_TYPE | GetD3D12StateObject () const =0 |
Returns ID3D12StateObject interface of the internal D3D12 state object for ray tracing. | |
virtual ID3D12RootSignature *DILIGENT_CALL_TYPE | GetD3D12RootSignature () const =0 |
Returns a pointer to the root signature object associated with this pipeline state. | |
![]() | |
virtual const PipelineStateDesc &DILIGENT_CALL_TYPE | GetDesc () const override=0 |
Returns the pipeline description used to create the object. | |
virtual const GraphicsPipelineDesc &DILIGENT_CALL_TYPE | GetGraphicsPipelineDesc () const =0 |
Returns the graphics pipeline description used to create the object. | |
virtual const RayTracingPipelineDesc &DILIGENT_CALL_TYPE | GetRayTracingPipelineDesc () const =0 |
Returns the ray tracing pipeline description used to create the object. | |
virtual const TilePipelineDesc &DILIGENT_CALL_TYPE | GetTilePipelineDesc () const =0 |
Returns the tile pipeline description used to create the object. | |
virtual void DILIGENT_CALL_TYPE | BindStaticResources (SHADER_TYPE ShaderStages, IResourceMapping *pResourceMapping, BIND_SHADER_RESOURCES_FLAGS Flags)=0 |
Binds resources for all shaders in the pipeline state. | |
virtual Uint32 DILIGENT_CALL_TYPE | GetStaticVariableCount (SHADER_TYPE ShaderType) const =0 |
Returns the number of static shader resource variables. | |
virtual IShaderResourceVariable *DILIGENT_CALL_TYPE | GetStaticVariableByName (SHADER_TYPE ShaderType, const Char *Name)=0 |
Returns static shader resource variable. | |
virtual IShaderResourceVariable *DILIGENT_CALL_TYPE | GetStaticVariableByIndex (SHADER_TYPE ShaderType, Uint32 Index)=0 |
Returns static shader resource variable by its index. | |
virtual void DILIGENT_CALL_TYPE | CreateShaderResourceBinding (IShaderResourceBinding **ppShaderResourceBinding, Bool InitStaticResources=false)=0 |
Creates a shader resource binding object. | |
virtual void DILIGENT_CALL_TYPE | InitializeStaticSRBResources (struct IShaderResourceBinding *pShaderResourceBinding) const =0 |
Initializes static resources in the shader binding object. | |
virtual void DILIGENT_CALL_TYPE | CopyStaticResources (IPipelineState *pDstPipeline) const =0 |
Copies static resource bindings to the destination pipeline. | |
virtual bool DILIGENT_CALL_TYPE | IsCompatibleWith (const struct IPipelineState *pPSO) const =0 |
Checks if this pipeline state object is compatible with another PSO. | |
virtual Uint32 DILIGENT_CALL_TYPE | GetResourceSignatureCount () const =0 |
Returns the number of pipeline resource signatures used by this pipeline. | |
virtual IPipelineResourceSignature *DILIGENT_CALL_TYPE | GetResourceSignature (Uint32 Index) const =0 |
Returns pipeline resource signature at the give index. | |
virtual PIPELINE_STATE_STATUS DILIGENT_CALL_TYPE | GetStatus (bool WaitForCompletion=false)=0 |
Returns the pipeline state status, see Diligent::PIPELINE_STATE_STATUS. | |
![]() | |
virtual Int32 DILIGENT_CALL_TYPE | GetUniqueID () const =0 |
Returns unique identifier assigned to an object. | |
virtual void DILIGENT_CALL_TYPE | SetUserData (IObject *pUserData)=0 |
Stores a pointer to the user-provided data object. | |
virtual IObject *DILIGENT_CALL_TYPE | GetUserData () const =0 |
Returns a pointer to the user data object previously set with SetUserData() method. | |
![]() | |
virtual void DILIGENT_CALL_TYPE | QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0 |
Queries the specific interface. | |
virtual ReferenceCounterValueType DILIGENT_CALL_TYPE | AddRef ()=0 |
Increments the number of strong references by 1. | |
virtual ReferenceCounterValueType DILIGENT_CALL_TYPE | Release ()=0 |
virtual IReferenceCounters *DILIGENT_CALL_TYPE | GetReferenceCounters () const =0 |
Exposes Direct3D12-specific functionality of a pipeline state object.
|
pure virtual |
Returns ID3D12PipelineState
interface of the internal D3D12 pipeline state object object.
The method does NOT increment the reference counter of the returned object, so Release() must not be called.
|
pure virtual |
Returns a pointer to the root signature object associated with this pipeline state.
The method does NOT increment the reference counter of the returned object, so Release() must not be called.
|
pure virtual |
Returns ID3D12StateObject
interface of the internal D3D12 state object for ray tracing.
The method does NOT increment the reference counter of the returned object, so Release() must not be called.