5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_PIPELINE_CACHE_VK_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_PIPELINE_CACHE_VK_H_
8 #include "flutter/fml/file.h"
21 std::shared_ptr<DeviceHolderVK> device_holder,
22 fml::UniqueFD cache_directory);
28 vk::UniquePipeline
CreatePipeline(
const vk::GraphicsPipelineCreateInfo& info);
30 vk::UniquePipeline
CreatePipeline(
const vk::ComputePipelineCreateInfo& info);
37 const std::shared_ptr<const Capabilities> caps_;
38 std::weak_ptr<DeviceHolderVK> device_holder_;
39 const fml::UniqueFD cache_directory_;
40 vk::UniquePipelineCache cache_;
41 bool is_valid_ =
false;
The Vulkan layers and extensions wrangler.
PipelineCacheVK(std::shared_ptr< const Capabilities > caps, std::shared_ptr< DeviceHolderVK > device_holder, fml::UniqueFD cache_directory)
vk::UniquePipeline CreatePipeline(const vk::GraphicsPipelineCreateInfo &info)
void PersistCacheToDisk() const
const CapabilitiesVK * GetCapabilities() const