An instance of a swapchain that does NOT adapt to going out of date with the underlying surface. Errors will be indicated when the next drawable is acquired from this implementation of the swapchain. If the error is due the swapchain going out of date, the caller must recreate another instance by optionally stealing this implementations guts. More...
#include <khr_swapchain_impl_vk.h>
Classes | |
| struct | AcquireResult |
Public Member Functions | |
| ~KHRSwapchainImplVK () | |
| bool | IsValid () const |
| AcquireResult | AcquireNextDrawable () |
| vk::Format | GetSurfaceFormat () const |
| std::shared_ptr< Context > | GetContext () const |
| std::pair< vk::UniqueSurfaceKHR, vk::UniqueSwapchainKHR > | DestroySwapchain () |
| const ISize & | GetSize () const |
| void | AddFinalCommandBuffer (std::shared_ptr< CommandBuffer > cmd_buffer) |
| std::optional< ISize > | GetCurrentUnderlyingSurfaceSize () const |
Static Public Member Functions | |
| static std::shared_ptr< KHRSwapchainImplVK > | Create (const std::shared_ptr< Context > &context, vk::UniqueSurfaceKHR surface, const ISize &size, bool enable_msaa=true, vk::SwapchainKHR old_swapchain=VK_NULL_HANDLE) |
An instance of a swapchain that does NOT adapt to going out of date with the underlying surface. Errors will be indicated when the next drawable is acquired from this implementation of the swapchain. If the error is due the swapchain going out of date, the caller must recreate another instance by optionally stealing this implementations guts.
Definition at line 30 of file khr_swapchain_impl_vk.h.
| impeller::KHRSwapchainImplVK::~KHRSwapchainImplVK | ( | ) |
Definition at line 278 of file khr_swapchain_impl_vk.cc.
References DestroySwapchain().
| KHRSwapchainImplVK::AcquireResult impeller::KHRSwapchainImplVK::AcquireNextDrawable | ( | ) |
Wait on the host for the synchronizer fence.
Get the next image index.
Record all subsequent cmd buffers as part of the current frame.
Definition at line 347 of file khr_swapchain_impl_vk.cc.
References impeller::BackendCast< ContextVK, Context >::Cast(), image, swapchain, VALIDATION_LOG, and impeller::SurfaceVK::WrapSwapchainImage().
| void impeller::KHRSwapchainImplVK::AddFinalCommandBuffer | ( | std::shared_ptr< CommandBuffer > | cmd_buffer | ) |
Definition at line 420 of file khr_swapchain_impl_vk.cc.
|
static |
Definition at line 111 of file khr_swapchain_impl_vk.cc.
References surface.
| std::pair< vk::UniqueSurfaceKHR, vk::UniqueSwapchainKHR > impeller::KHRSwapchainImplVK::DestroySwapchain | ( | ) |
Definition at line 330 of file khr_swapchain_impl_vk.cc.
Referenced by ~KHRSwapchainImplVK().
| std::shared_ptr< Context > impeller::KHRSwapchainImplVK::GetContext | ( | ) | const |
Definition at line 343 of file khr_swapchain_impl_vk.cc.
| std::optional< ISize > impeller::KHRSwapchainImplVK::GetCurrentUnderlyingSurfaceSize | ( | ) | const |
Definition at line 286 of file khr_swapchain_impl_vk.cc.
References impeller::BackendCast< ContextVK, Context >::Cast(), IsValid(), and impeller::TSize< T >::MakeWH().
| const ISize & impeller::KHRSwapchainImplVK::GetSize | ( | ) | const |
Definition at line 282 of file khr_swapchain_impl_vk.cc.
| vk::Format impeller::KHRSwapchainImplVK::GetSurfaceFormat | ( | ) | const |
Definition at line 339 of file khr_swapchain_impl_vk.cc.
| bool impeller::KHRSwapchainImplVK::IsValid | ( | ) | const |
Definition at line 318 of file khr_swapchain_impl_vk.cc.
Referenced by GetCurrentUnderlyingSurfaceSize().