// Copyright 2021 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_VIZ_COMMON_FRAME_SINKS_BLIT_REQUEST_H_ #define COMPONENTS_VIZ_COMMON_FRAME_SINKS_BLIT_REQUEST_H_ #include <memory> #include <string> #include <utility> #include <vector> #include "components/viz/common/frame_sinks/copy_output_result.h" #include "components/viz/common/viz_common_export.h" #include "gpu/command_buffer/common/mailbox_holder.h" #include "third_party/skia/include/core/SkImage.h" #include "ui/gfx/geometry/point.h" #include "ui/gfx/geometry/rect.h" namespace viz { // `BlendBitmap` can be added to `BlitRequest`, and signifies that the caller // would like to blend (SrcOver) the specified bitmap onto the results of the // `CopyOutputRequest` that (transitively, via `BlitRequest`) contains this // blend bitmap. class VIZ_COMMON_EXPORT BlendBitmap { … }; // Enum used to specify letteboxing behavior for a BlitRequest. enum class LetterboxingBehavior { … }; // Structure describing a blit operation that can be appended to // `CopyOutputRequest` if the callers want to place the results of the operation // in textures that they own. class VIZ_COMMON_EXPORT BlitRequest { … }; } // namespace viz #endif // COMPONENTS_VIZ_COMMON_FRAME_SINKS_BLIT_REQUEST_H_