Diligent Engine API Reference
Public Member Functions | List of all members
Diligent::SwapChainD3D12Impl Class Reference

Implementation of the Diligent::ISwapChainD3D12 interface. More...

Inheritance diagram for Diligent::SwapChainD3D12Impl:
Diligent::SwapChainBase< ISwapChainD3D12 > Diligent::ObjectBase< ISwapChainD3D12 > Diligent::RefCountedObject< ISwapChainD3D12 > Diligent::ISwapChainD3D12 Diligent::ISwapChain

Public Member Functions

virtual void Present ()
 Presents a rendered image to the user.
 
virtual void Resize (Uint32 NewWidth, Uint32 NewHeight)
 Changes the swap chain's back buffer size. More...
 
virtual IDXGISwapChain * GetDXGISwapChain () override final
 Returns a pointer to the IDXGISwapChain interface of the internal DXGI object. More...
 
virtual ITextureViewD3D12GetCurrentBackBufferRTV () override final
 Returns a pointer to the render target view of the current back buffer in the swap chain. More...
 
virtual ITextureViewD3D12GetDepthBufferDSV () override final
 Returns a pointer to the depth-stencil view of the depth buffer. More...
 
- Public Member Functions inherited from Diligent::SwapChainBase< ISwapChainD3D12 >
 SwapChainBase (IReferenceCounters *pRefCounters, IRenderDevice *pDevice, IDeviceContext *pDeviceContext, const SwapChainDesc &SCDesc)
 
virtual const SwapChainDescGetDesc () const override final
 Implementation of ISwapChain::GetDesc()
 

Additional Inherited Members

- Protected Attributes inherited from Diligent::SwapChainBase< ISwapChainD3D12 >
Diligent::RefCntAutoPtr< IRenderDevicem_pRenderDevice
 Strong reference to the render device.
 
Diligent::RefCntWeakPtr< IDeviceContextm_wpDeviceContext
 Weak references to the immediate device context. The context holds the strong reference to the swap chain.
 
SwapChainDesc m_SwapChainDesc
 Swap chain description.
 

Detailed Description

Implementation of the Diligent::ISwapChainD3D12 interface.

Member Function Documentation

◆ GetCurrentBackBufferRTV()

ITextureViewD3D12 * Diligent::SwapChainD3D12Impl::GetCurrentBackBufferRTV ( )
finaloverridevirtual

Returns a pointer to the render target view of the current back buffer in the swap chain.

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

Implements Diligent::ISwapChainD3D12.

◆ GetDepthBufferDSV()

virtual ITextureViewD3D12* Diligent::SwapChainD3D12Impl::GetDepthBufferDSV ( )
inlinefinaloverridevirtual

Returns a pointer to the depth-stencil view of the depth buffer.

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

Implements Diligent::ISwapChainD3D12.

◆ GetDXGISwapChain()

virtual IDXGISwapChain* Diligent::SwapChainD3D12Impl::GetDXGISwapChain ( )
inlinefinaloverridevirtual

Returns a pointer to the IDXGISwapChain interface of the internal DXGI object.

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

Implements Diligent::ISwapChainD3D12.

◆ Resize()

void Diligent::SwapChainD3D12Impl::Resize ( Uint32  NewWidth,
Uint32  NewHeight 
)
virtual

Changes the swap chain's back buffer size.

Parameters
[in]NewWidth- New swap chain width, in pixels
[in]NewHeight- New swap chain height, in pixels

Implements Diligent::ISwapChain.