5 #ifndef FLUTTER_IMPELLER_RENDERER_BLIT_PASS_H_
6 #define FLUTTER_IMPELLER_RENDERER_BLIT_PASS_H_
30 virtual bool IsValid()
const = 0;
40 const std::shared_ptr<Texture>& texture);
47 virtual bool ResizeTexture(
const std::shared_ptr<Texture>& source,
48 const std::shared_ptr<Texture>& destination) = 0;
69 bool AddCopy(std::shared_ptr<Texture> source,
70 std::shared_ptr<Texture> destination,
71 std::optional<IRect> source_region = std::nullopt,
72 IPoint destination_origin = {},
73 std::string label =
"");
92 bool AddCopy(std::shared_ptr<Texture> source,
93 std::shared_ptr<DeviceBuffer> destination,
94 std::optional<IRect> source_region = std::nullopt,
95 size_t destination_offset = 0,
96 std::string label =
"");
126 std::shared_ptr<Texture> destination,
127 std::optional<IRect> destination_region = std::nullopt,
128 std::string label =
"",
130 bool convert_to_read =
true);
140 bool GenerateMipmap(std::shared_ptr<Texture> texture, std::string label =
"");
151 const std::shared_ptr<Allocator>& transients_allocator)
const = 0;
156 virtual void OnSetLabel(std::string label) = 0;
159 std::shared_ptr<Texture> source,
160 std::shared_ptr<Texture> destination,
162 IPoint destination_origin,
163 std::string label) = 0;
166 std::shared_ptr<Texture> source,
167 std::shared_ptr<DeviceBuffer> destination,
169 size_t destination_offset,
170 std::string label) = 0;
174 std::shared_ptr<Texture> destination,
175 IRect destination_region,
178 bool convert_to_read) = 0;
181 std::string label) = 0;
191 #endif // FLUTTER_IMPELLER_RENDERER_BLIT_PASS_H_