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

/*
 * Copyright 2016 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

#include "src/core/SkRasterPipeline.h"

#include "include/core/SkColorType.h"
#include "include/core/SkImageInfo.h"
#include "include/core/SkMatrix.h"
#include "include/private/base/SkDebug.h"
#include "include/private/base/SkTemplates.h"
#include "modules/skcms/skcms.h"
#include "src/base/SkVx.h"
#include "src/core/SkImageInfoPriv.h"
#include "src/core/SkOpts.h"
#include "src/core/SkRasterPipelineOpContexts.h"
#include "src/core/SkRasterPipelineOpList.h"

#include <algorithm>
#include <cstring>
#include <vector>

usingnamespaceskia_private;
Op;

bool gForceHighPrecisionRasterPipeline;

SkRasterPipeline::SkRasterPipeline(SkArenaAlloc* alloc) :{}

void SkRasterPipeline::reset() {}

void SkRasterPipeline::append(SkRasterPipelineOp op, void* ctx) {}

uint8_t* SkRasterPipeline::tailPointer() {}

void SkRasterPipeline::uncheckedAppend(SkRasterPipelineOp op, void* ctx) {}

void SkRasterPipeline::append(SkRasterPipelineOp op, uintptr_t ctx) {}

void SkRasterPipeline::extend(const SkRasterPipeline& src) {}

const char* SkRasterPipeline::GetOpName(SkRasterPipelineOp op) {}

void SkRasterPipeline::dump() const {}

void SkRasterPipeline::appendSetRGB(SkArenaAlloc* alloc, const float rgb[3]) {}

void SkRasterPipeline::appendConstantColor(SkArenaAlloc* alloc, const float rgba[4]) {}

void SkRasterPipeline::appendMatrix(SkArenaAlloc* alloc, const SkMatrix& matrix) {}

void SkRasterPipeline::appendLoad(SkColorType ct, const SkRasterPipeline_MemoryCtx* ctx) {}

void SkRasterPipeline::appendLoadDst(SkColorType ct, const SkRasterPipeline_MemoryCtx* ctx) {}

void SkRasterPipeline::appendStore(SkColorType ct, const SkRasterPipeline_MemoryCtx* ctx) {}

void SkRasterPipeline::appendTransferFunction(const skcms_TransferFunction& tf) {}

// GPUs clamp all color channels to the limits of the format just before the blend step. To match
// that auto-clamp, the RP blitter uses this helper immediately before appending blending stages.
void SkRasterPipeline::appendClampIfNormalized(const SkImageInfo& info) {}

void SkRasterPipeline::appendStackRewind() {}

static void prepend_to_pipeline(SkRasterPipelineStage*& ip, SkOpts::StageFn stageFn, void* ctx) {}

bool SkRasterPipeline::buildLowpPipeline(SkRasterPipelineStage* ip) const {}

void SkRasterPipeline::buildHighpPipeline(SkRasterPipelineStage* ip) const {}

SkRasterPipeline::StartPipelineFn SkRasterPipeline::buildPipeline(SkRasterPipelineStage* ip) const {}

int SkRasterPipeline::stagesNeeded() const {}

void SkRasterPipeline::run(size_t x, size_t y, size_t w, size_t h) const {}

std::function<void(size_t, size_t, size_t, size_t)> SkRasterPipeline::compile() const {}

void SkRasterPipeline::addMemoryContext(SkRasterPipeline_MemoryCtx* ctx,
                                        int bytesPerPixel,
                                        bool load,
                                        bool store) {}