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 <swapchain_impl_vk.h>
Classes | |
| struct | AcquireResult |
Public Member Functions | |
| ~SwapchainImplVK () | |
| bool | IsValid () const |
| AcquireResult | AcquireNextDrawable () |
| vk::Format | GetSurfaceFormat () const |
| vk::SurfaceTransformFlagBitsKHR | GetLastTransform () const |
| std::shared_ptr< Context > | GetContext () const |
| std::pair< vk::UniqueSurfaceKHR, vk::UniqueSwapchainKHR > | DestroySwapchain () |
Static Public Member Functions | |
| static std::shared_ptr< SwapchainImplVK > | Create (const std::shared_ptr< Context > &context, vk::UniqueSurfaceKHR surface, vk::SwapchainKHR old_swapchain=VK_NULL_HANDLE, vk::SurfaceTransformFlagBitsKHR last_transform=vk::SurfaceTransformFlagBitsKHR::eIdentity) |
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 29 of file swapchain_impl_vk.h.
| impeller::SwapchainImplVK::~SwapchainImplVK | ( | ) |
Definition at line 291 of file swapchain_impl_vk.cc.
References DestroySwapchain().
| SwapchainImplVK::AcquireResult impeller::SwapchainImplVK::AcquireNextDrawable | ( | ) |
Wait on the host for the synchronizer fence.
Poll to see if the orientation has changed.
https://developer.android.com/games/optimize/vulkan-prerotation#using_polling
Get the next image index.
Definition at line 328 of file swapchain_impl_vk.cc.
References impeller::BackendCast< ContextVK, Context >::Cast(), impeller::kPollFramesForOrientation, and VALIDATION_LOG.
|
static |
Definition at line 130 of file swapchain_impl_vk.cc.
Referenced by impeller::SwapchainVK::AcquireNextDrawable(), and impeller::SwapchainVK::Create().
| std::pair< vk::UniqueSurfaceKHR, vk::UniqueSwapchainKHR > impeller::SwapchainImplVK::DestroySwapchain | ( | ) |
| std::shared_ptr< Context > impeller::SwapchainImplVK::GetContext | ( | ) | const |
Definition at line 324 of file swapchain_impl_vk.cc.
| vk::SurfaceTransformFlagBitsKHR impeller::SwapchainImplVK::GetLastTransform | ( | ) | const |
Definition at line 320 of file swapchain_impl_vk.cc.
| vk::Format impeller::SwapchainImplVK::GetSurfaceFormat | ( | ) | const |
Definition at line 316 of file swapchain_impl_vk.cc.
| bool impeller::SwapchainImplVK::IsValid | ( | ) | const |
Definition at line 295 of file swapchain_impl_vk.cc.