#include "components/viz/common/frame_sinks/copy_output_result.h"
#include <utility>
#include "base/check_op.h"
#include "base/notreached.h"
#include "third_party/libyuv/include/libyuv.h"
#include "third_party/skia/include/core/SkColorSpace.h"
#include "third_party/skia/include/core/SkPixelRef.h"
#include "ui/gfx/color_space.h"
namespace viz {
CopyOutputResult::TextureResult::TextureResult(
const CopyOutputResult::TextureResult& other) = default;
CopyOutputResult::TextureResult& CopyOutputResult::TextureResult::operator=(
const CopyOutputResult::TextureResult& other) = default;
CopyOutputResult::TextureResult::TextureResult(
const gpu::Mailbox& mailbox,
const gfx::ColorSpace& color_space)
: … { … }
CopyOutputResult::CopyOutputResult(Format format,
Destination destination,
const gfx::Rect& rect,
bool needs_lock_for_bitmap)
: … { … }
CopyOutputResult::~CopyOutputResult() = default;
bool CopyOutputResult::IsEmpty() const { … }
bool CopyOutputResult::LockSkBitmap() const { … }
void CopyOutputResult::UnlockSkBitmap() const { … }
const SkBitmap& CopyOutputResult::AsSkBitmap() const { … }
CopyOutputResult::ScopedSkBitmap CopyOutputResult::ScopedAccessSkBitmap()
const { … }
const CopyOutputResult::TextureResult* CopyOutputResult::GetTextureResult()
const { … }
CopyOutputResult::ReleaseCallbacks CopyOutputResult::TakeTextureOwnership() { … }
bool CopyOutputResult::ReadI420Planes(uint8_t* y_out,
int y_out_stride,
uint8_t* u_out,
int u_out_stride,
uint8_t* v_out,
int v_out_stride) const { … }
bool CopyOutputResult::ReadNV12Planes(uint8_t* y_out,
int y_out_stride,
uint8_t* uv_out,
int uv_out_stride) const { … }
bool CopyOutputResult::ReadRGBAPlane(uint8_t* dest, int stride) const { … }
gfx::ColorSpace CopyOutputResult::GetRGBAColorSpace() const { … }
CopyOutputSkBitmapResult::CopyOutputSkBitmapResult(const gfx::Rect& rect,
SkBitmap bitmap)
: … { … }
CopyOutputSkBitmapResult::CopyOutputSkBitmapResult(Format format,
const gfx::Rect& rect,
SkBitmap bitmap)
: … { … }
const SkBitmap& CopyOutputSkBitmapResult::AsSkBitmap() const { … }
CopyOutputSkBitmapResult::~CopyOutputSkBitmapResult() = default;
CopyOutputTextureResult::CopyOutputTextureResult(
Format format,
const gfx::Rect& rect,
TextureResult texture_result,
ReleaseCallbacks release_callbacks)
: … { … }
CopyOutputTextureResult::~CopyOutputTextureResult() { … }
const CopyOutputResult::TextureResult*
CopyOutputTextureResult::GetTextureResult() const { … }
CopyOutputResult::ReleaseCallbacks
CopyOutputTextureResult::TakeTextureOwnership() { … }
CopyOutputResult::ScopedSkBitmap::ScopedSkBitmap() = default;
CopyOutputResult::ScopedSkBitmap::ScopedSkBitmap(
const CopyOutputResult* result) { … }
CopyOutputResult::ScopedSkBitmap::ScopedSkBitmap(ScopedSkBitmap&& other) { … }
CopyOutputResult::ScopedSkBitmap::~ScopedSkBitmap() { … }
CopyOutputResult::ScopedSkBitmap& CopyOutputResult::ScopedSkBitmap::operator=(
ScopedSkBitmap&& other) { … }
void CopyOutputResult::ScopedSkBitmap::reset() { … }
SkBitmap CopyOutputResult::ScopedSkBitmap::GetOutScopedBitmap() const { … }
}