Flutter Engine
vulkan::VulkanProvider Class Referenceabstract

#include <vulkan_provider.h>

Inheritance diagram for vulkan::VulkanProvider:
flutter_runner::VulkanSurfaceProducer

Public Member Functions

virtual const vulkan::VulkanProcTablevk ()=0
 
virtual const vulkan::VulkanHandle< VkDevice > & vk_device ()=0
 
vulkan::VulkanHandle< VkFence > CreateFence ()
 

Detailed Description

Definition at line 12 of file vulkan_provider.h.

Member Function Documentation

◆ CreateFence()

vulkan::VulkanHandle< VkFence > vulkan::VulkanProvider::CreateFence ( )
inline

Definition at line 17 of file vulkan_provider.h.

References vk(), VK_CALL_LOG_ERROR, and vk_device().

Referenced by flutter_runner::VulkanSurface::GetSize().

17  {
18  const VkFenceCreateInfo create_info = {
19  .sType = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO,
20  .pNext = nullptr,
21  .flags = 0,
22  };
23  VkFence fence;
24  if (VK_CALL_LOG_ERROR(vk().CreateFence(vk_device(), &create_info, nullptr,
25  &fence)) != VK_SUCCESS)
27 
28  return {fence, [this](VkFence fence) {
29  vk().DestroyFence(vk_device(), fence, nullptr);
30  }};
31  }
vulkan::VulkanHandle< VkFence > CreateFence()
virtual const vulkan::VulkanHandle< VkDevice > & vk_device()=0
#define VK_CALL_LOG_ERROR(expression)
virtual const vulkan::VulkanProcTable & vk()=0

◆ vk()

◆ vk_device()


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