Diligent Engine API Reference
Public Member Functions | List of all members
Diligent::IPipelineState Class Referenceabstract
Inheritance diagram for Diligent::IPipelineState:
Diligent::IDeviceObject Diligent::IPipelineStateD3D11 Diligent::IPipelineStateD3D12 Diligent::IPipelineStateGL Diligent::RefCountedObject< IPipelineStateD3D11 > Diligent::RefCountedObject< IPipelineStateD3D12 > Diligent::RefCountedObject< IPipelineStateGL > Diligent::ObjectBase< IPipelineStateD3D11 > Diligent::ObjectBase< IPipelineStateD3D12 > Diligent::ObjectBase< IPipelineStateGL > Diligent::DeviceObjectBase< IPipelineStateD3D11, PipelineStateDesc > Diligent::DeviceObjectBase< IPipelineStateD3D12, PipelineStateDesc > Diligent::DeviceObjectBase< IPipelineStateGL, PipelineStateDesc > Diligent::PipelineStateBase< IPipelineStateD3D11, IRenderDeviceD3D11 > Diligent::PipelineStateBase< IPipelineStateD3D12, IRenderDeviceD3D12 > Diligent::PipelineStateBase< IPipelineStateGL, IGLDeviceBaseInterface > Diligent::PipelineStateD3D11Impl Diligent::PipelineStateD3D12Impl Diligent::PipelineStateGLImpl

Public Member Functions

virtual void QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0
 Queries the specific interface, see IObject::QueryInterface() for details.
 
virtual const PipelineStateDescGetDesc () const =0
 Returns the blend state description used to create the object.
 
virtual void BindShaderResources (IResourceMapping *pResourceMapping, Uint32 Flags)=0
 Binds resources for all shaders in the pipeline state. More...
 
virtual void CreateShaderResourceBinding (IShaderResourceBinding **ppShaderResourceBinding)=0
 Creates a shader resource binding object. More...
 

Detailed Description

Pipeline state interface

Member Function Documentation

◆ BindShaderResources()

virtual void Diligent::IPipelineState::BindShaderResources ( IResourceMapping pResourceMapping,
Uint32  Flags 
)
pure virtual

Binds resources for all shaders in the pipeline state.

Parameters
[in]pResourceMapping- Pointer to the resource mapping interface.
[in]Flags- Additional flags. See Diligent::BIND_SHADER_RESOURCES_FLAGS.
Remarks
For older OpenGL devices that do not support program pipelines (OpenGL4.1-, OpenGLES3.0-). This function is the only way to bind shader resources.

Implemented in Diligent::PipelineStateD3D11Impl, Diligent::PipelineStateD3D12Impl, and Diligent::PipelineStateGLImpl.

◆ CreateShaderResourceBinding()

virtual void Diligent::IPipelineState::CreateShaderResourceBinding ( IShaderResourceBinding **  ppShaderResourceBinding)
pure virtual

Creates a shader resource binding object.

Parameters
[out]ppShaderResourceBinding- memory location where pointer to the new shader resource binding object is written.

Implemented in Diligent::PipelineStateD3D11Impl, Diligent::PipelineStateD3D12Impl, and Diligent::PipelineStateGLImpl.