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. | |
Public Member Functions inherited from Diligent::IPipelineState | |
| 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. | |
Public Member Functions inherited from Diligent::IDeviceObject | |
| 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. | |
Public Member Functions inherited from Diligent.IObject | |
| virtual void DILIGENT_CALL_TYPE | QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0 |
| Queries the specific interface. | |
| template<typename DerivedType, typename = typename std::enable_if<std::is_base_of<IObject, DerivedType>::value>::type> | |
| void | QueryInterface (const INTERFACE_ID &IID, DerivedType **ppInterface) |
| 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.