Diligent Engine API Reference: Diligent::IDeviceContextD3D11 Class Reference

Diligent Engine API Reference

Public Member Functions | List of all members
Diligent::IDeviceContextD3D11 Class Referenceabstract

Interface to the device context object implemented in D3D11. More...

Inheritance diagram for Diligent::IDeviceContextD3D11:

## Public Member Functions
virtual ID3D11DeviceContext * | GetD3D11DeviceContext ()=0
| Returns a pointer to the ID3D11DeviceContext interface of the internal Direct3D11 object. More...
Public Member Functions inherited from Diligent::IDeviceContext
virtual void | QueryInterface (const Diligent::INTERFACE_ID &IID, IObject **ppInterface)=0
| Queries the specific interface, see IObject::QueryInterface() for details.
virtual void | SetPipelineState (IPipelineState *pPipelineState)=0
| Sets the pipeline state. More...
virtual void | TransitionShaderResources (IPipelineState *pPipelineState, IShaderResourceBinding *pShaderResourceBinding)=0
| Transitions shader resources to the require states. More...
virtual void | CommitShaderResources (IShaderResourceBinding *pShaderResourceBinding, Uint32 Flags)=0
| Commits shader resources to the device context. More...
virtual void | SetStencilRef (Uint32 StencilRef)=0
| Sets the stencil reference value. More...
virtual void | SetBlendFactors (const float *pBlendFactors=nullptr)=0
virtual void | SetVertexBuffers (Uint32 StartSlot, Uint32 NumBuffersSet, IBuffer **ppBuffers, Uint32 *pStrides, Uint32 *pOffsets, Uint32 Flags)=0
| Binds vertex buffers to the pipeline. More...
virtual void | InvalidateState ()=0
| Invalidates the cached context state. More...
virtual void | SetIndexBuffer (IBuffer *pIndexBuffer, Uint32 ByteOffset)=0
| Binds an index buffer to the pipeline. More...
virtual void | SetViewports (Uint32 NumViewports, const Viewport *pViewports, Uint32 RTWidth, Uint32 RTHeight)=0
| Sets an array of viewports. More...
virtual void | SetScissorRects (Uint32 NumRects, const Rect *pRects, Uint32 RTWidth, Uint32 RTHeight)=0
| Sets active scissor rects. More...
virtual void | SetRenderTargets (Uint32 NumRenderTargets, ITextureView *ppRenderTargets[], ITextureView *pDepthStencil)=0
| Binds one or more render targets and the depth-stencil buffer to the pipeline. It also sets the viewport to match the first non-null render target or depth-stencil buffer. More...
virtual void | Draw (DrawAttribs &DrawAttribs)=0
| Executes a draw command. More...
virtual void | DispatchCompute (const DispatchComputeAttribs &DispatchAttrs)=0
| Executes a dispatch compute command. More...
virtual void | ClearDepthStencil (ITextureView *pView, Uint32 ClearFlags=CLEAR_DEPTH_FLAG, float fDepth=1.f, Uint8 Stencil=0)=0
| Clears a depth-stencil view. More...
virtual void | ClearRenderTarget (ITextureView *pView, const float *RGBA=nullptr)=0
| Clears a render target view. More...
virtual void | FinishCommandList (ICommandList **ppCommandList)=0
| Finishes recording commands and generates a command list. More...
virtual void | ExecuteCommandList (ICommandList *pCommandList)=0
| Executes recorded commands in a command list. More...
virtual void | Flush ()=0
| Flushes the command buffer.
virtual void | SetSwapChain (ISwapChain *pSwapChain)=0
| Sets the swap chain in the device context. More...

## Detailed Description

Interface to the device context object implemented in D3D11.

## Member Function Documentation

## ◆ GetD3D11DeviceContext()

virtual ID3D11DeviceContext* Diligent::IDeviceContextD3D11::GetD3D11DeviceContext | ( |  | ) |
| pure virtual

Returns a pointer to the ID3D11DeviceContext interface of the internal Direct3D11 object.

The method does NOT call AddRef() on the returned interface, so Release() must not be called.

Implemented in Diligent::DeviceContextD3D11Impl.