#include "include/core/SkAlphaType.h"
#include "include/core/SkBlendMode.h"
#include "include/core/SkColor.h"
#include "include/core/SkColorType.h"
#include "include/core/SkImageInfo.h"
#include "include/core/SkPaint.h"
#include "include/core/SkPixmap.h"
#include "include/core/SkRefCnt.h"
#include "include/core/SkShader.h"
#include "include/private/base/SkAssert.h"
#include "src/base/SkArenaAlloc.h"
#include "src/core/SkBlitter.h"
#include "src/core/SkColorSpacePriv.h"
#include "src/core/SkColorSpaceXformSteps.h"
#include "src/core/SkCoreBlitters.h"
#include "src/core/SkImageInfoPriv.h"
#include "src/core/SkRasterPipeline.h"
#include "src/core/SkRasterPipelineOpContexts.h"
#include "src/core/SkRasterPipelineOpList.h"
#include "src/core/SkSpriteBlitter.h"
#include <cstdint>
#include <cstring>
#include <optional>
#include <utility>
struct SkIRect;
struct SkMask;
extern bool gSkForceRasterPipelineBlitter;
SkSpriteBlitter::SkSpriteBlitter(const SkPixmap& source)
: … { … }
bool SkSpriteBlitter::setup(const SkPixmap& dst, int left, int top, const SkPaint& paint) { … }
void SkSpriteBlitter::blitH(int x, int y, int width) { … }
void SkSpriteBlitter::blitAntiH(int x, int y, const SkAlpha antialias[], const int16_t runs[]) { … }
void SkSpriteBlitter::blitV(int x, int y, int height, SkAlpha alpha) { … }
void SkSpriteBlitter::blitMask(const SkMask& mask, const SkIRect& clip) { … }
class SkSpriteBlitter_Memcpy final : public SkSpriteBlitter { … };
class SkRasterPipelineSpriteBlitter : public SkSpriteBlitter { … };
SkBlitter* SkBlitter::ChooseSprite(const SkPixmap& dst, const SkPaint& paint,
const SkPixmap& source, int left, int top,
SkArenaAlloc* alloc, sk_sp<SkShader> clipShader) { … }