Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::SwapChainBase< BaseInterface > Class Template Reference

Base implementation of the swap chain. More...

#include <SwapChainBase.hpp>

Inheritance diagram for Diligent::SwapChainBase< BaseInterface >:
Diligent::ObjectBase< BaseInterface > Diligent::RefCountedObject< BaseInterface > Diligent::SwapChainGLBase< ISwapChainGL > Diligent::SwapChainD3DBase< BaseInterface, DXGISwapChainType > Diligent::SwapChainGLBase< BaseInterface > Diligent::SwapChainGLIOS Diligent::SwapChainGLImpl

Public Member Functions

 SwapChainBase (IReferenceCounters *pRefCounters, IRenderDevice *pDevice, IDeviceContext *pDeviceContext, const SwapChainDesc &SCDesc)
 
virtual const SwapChainDesc &DILIGENT_CALL_TYPE GetDesc () const override final
 Implementation of ISwapChain::GetDesc()
 

Protected Attributes

RefCntAutoPtr< IRenderDevicem_pRenderDevice
 Strong reference to the render device.
 
RefCntWeakPtr< IDeviceContextm_wpDeviceContext
 
SwapChainDesc m_SwapChainDesc
 Swap chain description.
 
SURFACE_TRANSFORM m_DesiredPreTransform = SURFACE_TRANSFORM_OPTIMAL
 Desired surface pre-transformation.
 

Detailed Description

template<class BaseInterface>
class Diligent::SwapChainBase< BaseInterface >

Base implementation of the swap chain.

Template Parameters
BaseInterface- Base interface that this class will inherit (Diligent::ISwapChainGL, Diligent::ISwapChainD3D11, Diligent::ISwapChainD3D12 or Diligent::ISwapChainVk).
Remarks
Swap chain holds the strong reference to the device and a weak reference to the immediate context.

Constructor & Destructor Documentation

◆ SwapChainBase()

template<class BaseInterface>
Diligent::SwapChainBase< BaseInterface >::SwapChainBase ( IReferenceCounters * pRefCounters,
IRenderDevice * pDevice,
IDeviceContext * pDeviceContext,
const SwapChainDesc & SCDesc )
inline
Parameters
pRefCounters- Reference counters object that controls the lifetime of this swap chain.
pDevice- Pointer to the device.
pDeviceContext- Pointer to the device context.
SCDesc- Swap chain description

Member Data Documentation

◆ m_wpDeviceContext

template<class BaseInterface>
RefCntWeakPtr<IDeviceContext> Diligent::SwapChainBase< BaseInterface >::m_wpDeviceContext
protected

Weak references to the immediate device context. The context holds the strong reference to the swap chain.