5#ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_BLIT_PASS_GLES_H_
6#define FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_BLIT_PASS_GLES_H_
10#include "flutter/impeller/base/config.h"
11#include "flutter/impeller/renderer/backend/gles/reactor_gles.h"
12#include "flutter/impeller/renderer/blit_pass.h"
18 public std::enable_shared_from_this<BlitPassGLES> {
26 std::vector<std::unique_ptr<BlitEncodeGLES>> commands_;
29 bool is_valid_ =
false;
34 bool IsValid()
const override;
37 void OnSetLabel(std::string label)
override;
41 const std::shared_ptr<Allocator>& transients_allocator)
const override;
44 bool OnCopyTextureToTextureCommand(std::shared_ptr<Texture>
source,
45 std::shared_ptr<Texture> destination,
48 std::string label)
override;
51 bool OnCopyTextureToBufferCommand(std::shared_ptr<Texture>
source,
52 std::shared_ptr<DeviceBuffer> destination,
54 size_t destination_offset,
55 std::string label)
override;
59 std::shared_ptr<Texture> destination,
60 IRect destination_region,
63 bool convert_to_read)
override;
66 bool OnGenerateMipmapCommand(std::shared_ptr<Texture>
texture,
67 std::string label)
override;
Blit passes encode blit into the underlying command buffer.
std::shared_ptr< ReactorGLES > Ref