Flutter Impeller
impeller::KHRSwapchainVK Class Referencefinal

A swapchain implemented backed by VK_KHR_swapchain and VK_KHR_surface. More...

#include <khr_swapchain_vk.h>

Inheritance diagram for impeller::KHRSwapchainVK:
impeller::SwapchainVK

Public Member Functions

 ~KHRSwapchainVK ()
 
bool IsValid () const override
 
std::unique_ptr< SurfaceAcquireNextDrawable () override
 
vk::Format GetSurfaceFormat () const override
 
void UpdateSurfaceSize (const ISize &size) override
 Mark the current swapchain configuration as dirty, forcing it to be recreated on the next frame. More...
 
void AddFinalCommandBuffer (std::shared_ptr< CommandBuffer > cmd_buffer) const override
 
- Public Member Functions inherited from impeller::SwapchainVK
virtual ~SwapchainVK ()
 
 SwapchainVK (const SwapchainVK &)=delete
 
SwapchainVKoperator= (const SwapchainVK &)=delete
 

Friends

class SwapchainVK
 

Additional Inherited Members

- Static Public Member Functions inherited from impeller::SwapchainVK
static std::shared_ptr< SwapchainVKCreate (const std::shared_ptr< Context > &context, vk::UniqueSurfaceKHR surface, const ISize &size, bool enable_msaa=true)
 
- Protected Member Functions inherited from impeller::SwapchainVK
 SwapchainVK ()
 

Detailed Description

A swapchain implemented backed by VK_KHR_swapchain and VK_KHR_surface.

Definition at line 24 of file khr_swapchain_vk.h.

Constructor & Destructor Documentation

◆ ~KHRSwapchainVK()

impeller::KHRSwapchainVK::~KHRSwapchainVK ( )
default

Member Function Documentation

◆ AcquireNextDrawable()

std::unique_ptr< Surface > impeller::KHRSwapchainVK::AcquireNextDrawable ( )
overridevirtual

Implements impeller::SwapchainVK.

Definition at line 48 of file khr_swapchain_vk.cc.

48  {
49  return AcquireNextDrawable(0u);
50 }
std::unique_ptr< Surface > AcquireNextDrawable() override

◆ AddFinalCommandBuffer()

void impeller::KHRSwapchainVK::AddFinalCommandBuffer ( std::shared_ptr< CommandBuffer cmd_buffer) const
overridevirtual

Implements impeller::SwapchainVK.

Definition at line 43 of file khr_swapchain_vk.cc.

44  {
45  impl_->AddFinalCommandBuffer(std::move(cmd_buffer));
46 }

◆ GetSurfaceFormat()

vk::Format impeller::KHRSwapchainVK::GetSurfaceFormat ( ) const
overridevirtual

Implements impeller::SwapchainVK.

Definition at line 114 of file khr_swapchain_vk.cc.

114  {
115  return IsValid() ? impl_->GetSurfaceFormat() : vk::Format::eUndefined;
116 }
bool IsValid() const override

◆ IsValid()

bool impeller::KHRSwapchainVK::IsValid ( ) const
overridevirtual

Implements impeller::SwapchainVK.

Definition at line 33 of file khr_swapchain_vk.cc.

33  {
34  return impl_ ? impl_->IsValid() : false;
35 }

◆ UpdateSurfaceSize()

void impeller::KHRSwapchainVK::UpdateSurfaceSize ( const ISize size)
overridevirtual

Mark the current swapchain configuration as dirty, forcing it to be recreated on the next frame.

Implements impeller::SwapchainVK.

Definition at line 37 of file khr_swapchain_vk.cc.

37  {
38  // Update the size of the swapchain. On the next acquired drawable,
39  // the sizes may no longer match, forcing the swapchain to be recreated.
40  size_ = size;
41 }

Friends And Related Function Documentation

◆ SwapchainVK

friend class SwapchainVK
friend

Definition at line 45 of file khr_swapchain_vk.h.


The documentation for this class was generated from the following files: