chromium/third_party/skia/src/core/SkBlitter_A8.cpp

/*
 * Copyright 2006 The Android Open Source Project
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

#include "src/core/SkBlitter_A8.h"

#include "include/core/SkBlendMode.h"
#include "include/core/SkColorType.h"
#include "include/core/SkPaint.h"
#include "include/core/SkRect.h"
#include "include/core/SkShader.h" // IWYU pragma: keep
#include "include/core/SkTypes.h"
#include "include/private/base/SkDebug.h"
#include "src/base/SkArenaAlloc.h"
#include "src/core/SkMask.h"

#include <cstring>
#include <optional>

SkA8_Coverage_Blitter::SkA8_Coverage_Blitter(const SkPixmap& device, const SkPaint& paint)
    :{}

void SkA8_Coverage_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[],
                                      const int16_t runs[]) {}

void SkA8_Coverage_Blitter::blitH(int x, int y, int width) {}

void SkA8_Coverage_Blitter::blitV(int x, int y, int height, SkAlpha alpha) {}

void SkA8_Coverage_Blitter::blitRect(int x, int y, int width, int height) {}

void SkA8_Coverage_Blitter::blitMask(const SkMask& mask, const SkIRect& clip) {}

//////////////

static inline uint8_t div255(unsigned prod) {}

static inline unsigned u8_lerp(uint8_t a, uint8_t b, uint8_t t) {}

AlphaProc;

static uint8_t srcover_p (uint8_t src, uint8_t dst) {}
static uint8_t src_p     (uint8_t src, uint8_t dst) {}

template <typename Mode> void A8_row_bw(uint8_t dst[], uint8_t src, int N, Mode proc) {}
A8_RowBlitBW;

template <typename Mode>
void A8_row_aa(uint8_t dst[], uint8_t src, int N, uint8_t aa, Mode proc, const bool canFoldAA) {}
A8_RowBlitAA;

#define WRAP_BLIT

struct A8_RowBlitBWPair {};
constexpr A8_RowBlitBWPair gA8_RowBlitPairs[] =;
#undef WRAP_BLIT

static const A8_RowBlitBWPair* find_a8_rowproc_pair(SkBlendMode bm) {}

class SkA8_Blitter : public SkBlitter {};

SkA8_Blitter::SkA8_Blitter(const SkPixmap& device,
                           const SkPaint& paint) :{}

void SkA8_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[], const int16_t runs[]) {}

void SkA8_Blitter::blitH(int x, int y, int width) {}

void SkA8_Blitter::blitV(int x, int y, int height, SkAlpha aa) {}

void SkA8_Blitter::blitRect(int x, int y, int width, int height) {}

void SkA8_Blitter::blitMask(const SkMask& mask, const SkIRect& clip) {}

//////////////////

SkBlitter* SkA8Blitter_Choose(const SkPixmap& dst,
                              const SkMatrix& ctm,
                              const SkPaint& paint,
                              SkArenaAlloc* alloc,
                              bool drawCoverage,
                              sk_sp<SkShader> clipShader,
                              const SkSurfaceProps&) {}