5#ifndef FLUTTER_IMPELLER_RENDERER_COMMAND_BUFFER_H_
6#define FLUTTER_IMPELLER_RENDERER_COMMAND_BUFFER_H_
23class CommandBufferMock;
61 virtual void SetLabel(
const std::string& label)
const = 0;
123 [[nodiscard]]
bool SubmitCommands();
A collection of encoded commands to be submitted to the GPU for execution. A command buffer is obtain...
std::shared_ptr< BlitPass > CreateBlitPass()
Create a blit pass to record blit commands into.
std::shared_ptr< ComputePass > CreateComputePass()
Create a compute pass to record compute commands into.
CommandBuffer(std::weak_ptr< const Context > context)
virtual std::shared_ptr< BlitPass > OnCreateBlitPass()=0
virtual void SetLabel(const std::string &label) const =0
virtual bool IsValid() const =0
virtual std::shared_ptr< ComputePass > OnCreateComputePass()=0
virtual bool OnSubmitCommands(CompletionCallback callback)=0
std::function< void(Status)> CompletionCallback
std::shared_ptr< RenderPass > CreateRenderPass(const RenderTarget &render_target)
Create a render pass to record render commands into.
virtual void OnWaitUntilScheduled()=0
std::weak_ptr< const Context > context_
void WaitUntilScheduled()
Force execution of pending GPU commands.
virtual std::shared_ptr< RenderPass > OnCreateRenderPass(RenderTarget render_target)=0
An interface for submitting command buffers to the GPU for encoding and execution.
FlKeyEvent uint64_t FlKeyResponderAsyncCallback callback
Dart_NativeFunction function
SK_API sk_sp< SkSurface > RenderTarget(GrRecordingContext *context, skgpu::Budgeted budgeted, const SkImageInfo &imageInfo, int sampleCount, GrSurfaceOrigin surfaceOrigin, const SkSurfaceProps *surfaceProps, bool shouldCreateWithMips=false, bool isProtected=false)