30 GrDirectContext* skia_context,
31 std::unique_ptr<VulkanSwapchain> old_swapchain,
58 [[nodiscard]]
bool Submit();
66 VkSurfaceCapabilitiesKHR capabilities_;
67 VkSurfaceFormatKHR surface_format_;
69 std::vector<std::unique_ptr<VulkanBackbuffer>> backbuffers_;
70 std::vector<std::unique_ptr<VulkanImage>> images_;
71 std::vector<sk_sp<SkSurface>> surfaces_;
72 VkPipelineStageFlagBits current_pipeline_stage_;
73 size_t current_backbuffer_index_;
74 size_t current_image_index_;
77 std::vector<VkImage> GetImages()
const;
79 bool CreateSwapchainImages(GrDirectContext* skia_context,
81 const sk_sp<SkColorSpace>& color_space,
82 VkImageUsageFlags usage_flags);
84 sk_sp<SkSurface> CreateSkiaSurface(GrDirectContext* skia_context,
86 VkImageUsageFlags usage_flags,
89 sk_sp<SkColorSpace> color_space)
const;
uint32_t queue_family_index