LiteFX 0.3.1.2022
Computer Graphics Engine
LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl Class Reference

Inherits LiteFX::Implement< VulkanSwapChain >.

Public Member Functions

 VulkanSwapChainImpl (VulkanSwapChain *parent, const VulkanDevice &device)
 
 ~VulkanSwapChainImpl ()
 
void initialize (const Format &format, const Size2d &renderArea, const UInt32 &buffers)
 
void reset (const Format &format, const Size2d &renderArea, const UInt32 &buffers)
 
void cleanup ()
 
UInt32 swapBackBuffer ()
 
void present (const VulkanFrameBuffer &frameBuffer)
 
const VkSemaphore & currentSemaphore ()
 
Array< Format > getSurfaceFormats (const VkPhysicalDevice adapter, const VkSurfaceKHR surface) const noexcept
 
VkColorSpaceKHR findColorSpace (const VkPhysicalDevice adapter, const VkSurfaceKHR surface, const Format &format) const noexcept
 
- Public Member Functions inherited from LiteFX::Implement< VulkanSwapChain >
 Implement (VulkanSwapChain *parent)
 Initializes the implementation instance. More...
 
 Implement (Implement< VulkanSwapChain > &&)=delete
 
 Implement (const Implement< VulkanSwapChain > &)=delete
 
virtual ~Implement ()=default
 

Friends

class VulkanSwapChain
 

Additional Inherited Members

- Public Types inherited from LiteFX::Implement< VulkanSwapChain >
using interface_type = VulkanSwapChain
 
using base = Implement< interface_type >
 
- Protected Attributes inherited from LiteFX::Implement< VulkanSwapChain >
VulkanSwapChain * m_parent
 

Constructor & Destructor Documentation

◆ VulkanSwapChainImpl()

LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::VulkanSwapChainImpl ( VulkanSwapChain parent,
const VulkanDevice device 
)
inline

◆ ~VulkanSwapChainImpl()

LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::~VulkanSwapChainImpl ( )
inline

Member Function Documentation

◆ cleanup()

void LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::cleanup ( )
inline

◆ currentSemaphore()

const VkSemaphore & LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::currentSemaphore ( )
inline

◆ findColorSpace()

VkColorSpaceKHR LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::findColorSpace ( const VkPhysicalDevice  adapter,
const VkSurfaceKHR  surface,
const Format &  format 
) const
inlinenoexcept

◆ getSurfaceFormats()

Array< Format > LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::getSurfaceFormats ( const VkPhysicalDevice  adapter,
const VkSurfaceKHR  surface 
) const
inlinenoexcept

◆ initialize()

void LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::initialize ( const Format &  format,
const Size2d renderArea,
const UInt32 buffers 
)
inline

◆ present()

void LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::present ( const VulkanFrameBuffer frameBuffer)
inline

◆ reset()

void LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::reset ( const Format &  format,
const Size2d renderArea,
const UInt32 buffers 
)
inline

◆ swapBackBuffer()

UInt32 LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl::swapBackBuffer ( )
inline

Friends And Related Function Documentation

◆ VulkanSwapChain

friend class VulkanSwapChain
friend