5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_BLIT_PASS_VK_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_BLIT_PASS_VK_H_
8 #include "flutter/fml/macros.h"
15 class CommandEncoderVK;
16 class CommandBufferVK;
26 std::weak_ptr<CommandBufferVK> command_buffer_;
27 std::vector<std::unique_ptr<BlitEncodeVK>> commands_;
30 explicit BlitPassVK(std::weak_ptr<CommandBufferVK> command_buffer);
33 bool IsValid()
const override;
36 void OnSetLabel(std::string label)
override;
40 const std::shared_ptr<Allocator>& transients_allocator)
const override;
43 bool OnCopyTextureToTextureCommand(std::shared_ptr<Texture> source,
44 std::shared_ptr<Texture> destination,
47 std::string label)
override;
50 bool OnCopyTextureToBufferCommand(std::shared_ptr<Texture> source,
51 std::shared_ptr<DeviceBuffer> destination,
53 size_t destination_offset,
54 std::string label)
override;
57 bool OnCopyBufferToTextureCommand(
BufferView source,
58 std::shared_ptr<Texture> destination,
60 std::string label)
override;
62 bool OnGenerateMipmapCommand(std::shared_ptr<Texture> texture,
63 std::string label)
override;
72 #endif // FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_BLIT_PASS_VK_H_