blob: b50a670a807cf5e2773417dc99e59c64c13bebf1 [file] [log] [blame]
* Copyright 2022 Google LLC
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
#include "include/core/SkTypes.h"
#include <memory>
namespace SkSL {
class FunctionDefinition;
struct Program;
class DebugTracePriv;
namespace RP { class Program; }
// Convert 'function' to Raster Pipeline stages, for use by blends, shaders, and color filters.
// The arguments to the function are passed in registers:
// -- coordinates in src.rg for shaders
// -- color in src.rgba for color filters
// -- src/dst in src.rgba and dst.rgba for blenders
std::unique_ptr<RP::Program> MakeRasterPipelineProgram(const Program& program,
const FunctionDefinition& function,
DebugTracePriv* debugTrace = nullptr,
bool writeTraceOps = false);
} // namespace SkSL