#include "src/gpu/graphite/Image_YUVA_Graphite.h"
#include "include/core/SkBitmap.h"
#include "include/core/SkCanvas.h"
#include "include/core/SkColorSpace.h"
#include "include/core/SkImage.h"
#include "include/core/SkSurface.h"
#include "include/gpu/GpuTypes.h"
#include "include/gpu/graphite/Image.h"
#include "include/gpu/graphite/Recorder.h"
#include "include/gpu/graphite/Surface.h"
#include "src/core/SkYUVAInfoLocation.h"
#include "src/gpu/graphite/Caps.h"
#include "src/gpu/graphite/Image_Graphite.h"
#include "src/gpu/graphite/Log.h"
#include "src/gpu/graphite/RecorderPriv.h"
#include "src/gpu/graphite/ResourceProvider.h"
#include "src/gpu/graphite/Texture.h"
#include "src/gpu/graphite/TextureProxy.h"
#include "src/gpu/graphite/TextureProxyView.h"
#include "src/gpu/graphite/TextureUtils.h"
#include "src/shaders/SkImageShader.h"
namespace skgpu::graphite {
namespace {
constexpr auto kAssumedColorType = …;
static constexpr int kY = …;
static constexpr int kU = …;
static constexpr int kV = …;
static constexpr int kA = …;
static SkAlphaType yuva_alpha_type(const SkYUVAInfo& yuvaInfo) { … }
}
Image_YUVA::Image_YUVA(const YUVAProxies& proxies,
const SkYUVAInfo& yuvaInfo,
sk_sp<SkColorSpace> imageColorSpace)
: … { … }
Image_YUVA::~Image_YUVA() = default;
sk_sp<Image_YUVA> Image_YUVA::Make(const Caps* caps,
const SkYUVAInfo& yuvaInfo,
SkSpan<TextureProxyView> planes,
sk_sp<SkColorSpace> imageColorSpace) { … }
sk_sp<Image_YUVA> Image_YUVA::WrapImages(const Caps* caps,
const SkYUVAInfo& yuvaInfo,
SkSpan<const sk_sp<SkImage>> images,
sk_sp<SkColorSpace> imageColorSpace) { … }
size_t Image_YUVA::textureSize() const { … }
sk_sp<SkImage> Image_YUVA::onReinterpretColorSpace(sk_sp<SkColorSpace> newCS) const { … }
}