blob: 90124b58d86c9ea576d6d10d3bbf63c0d86f566a [file] [log] [blame] [edit]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#pragma once
#include "impeller/core/device_buffer.h"
#include "impeller/core/texture.h"
#include "impeller/geometry/rect.h"
namespace impeller {
struct BlitCommand {
std::string label;
};
struct BlitCopyTextureToTextureCommand : public BlitCommand {
std::shared_ptr<Texture> source;
std::shared_ptr<Texture> destination;
IRect source_region;
IPoint destination_origin;
};
struct BlitCopyTextureToBufferCommand : public BlitCommand {
std::shared_ptr<Texture> source;
std::shared_ptr<DeviceBuffer> destination;
IRect source_region;
size_t destination_offset;
};
struct BlitCopyBufferToTextureCommand : public BlitCommand {
BufferView source;
std::shared_ptr<Texture> destination;
IPoint destination_origin;
};
struct BlitGenerateMipmapCommand : public BlitCommand {
std::shared_ptr<Texture> texture;
};
} // namespace impeller