5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_COMMAND_BUFFER_VK_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_COMMAND_BUFFER_VK_H_
15 class CommandEncoderFactoryVK;
16 class CommandEncoderVK;
21 public std::enable_shared_from_this<CommandBufferVK> {
26 const std::shared_ptr<CommandEncoderVK>&
GetEncoder();
31 std::shared_ptr<CommandEncoderVK> encoder_;
32 std::shared_ptr<CommandEncoderFactoryVK> encoder_factory_;
35 std::shared_ptr<CommandEncoderFactoryVK> encoder_factory);
38 void SetLabel(
const std::string& label)
const override;
41 bool IsValid()
const override;
47 void OnWaitUntilScheduled()
override;
50 std::shared_ptr<RenderPass> OnCreateRenderPass(
RenderTarget target)
override;
53 std::shared_ptr<BlitPass> OnCreateBlitPass()
override;
56 std::shared_ptr<ComputePass> OnCreateComputePass()
override;
65 #endif // FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_COMMAND_BUFFER_VK_H_