1fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot/* 2fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot * Copyright 2018 Google Inc. 3fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot * 4fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot * Use of this source code is governed by a BSD-style license that can be 5fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot * found in the LICENSE file. 6fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot */ 7fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 8fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot/************************************************************************************************** 9fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot *** This file was autogenerated from GrPremulInputFragmentProcessor.fp; do not modify. 10fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot **************************************************************************************************/ 11fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "GrPremulInputFragmentProcessor.h" 12fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#if SK_SUPPORT_GPU 13fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "glsl/GrGLSLFragmentProcessor.h" 14fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "glsl/GrGLSLFragmentShaderBuilder.h" 15fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "glsl/GrGLSLProgramBuilder.h" 16fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "GrTexture.h" 17fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "SkSLCPP.h" 18fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#include "SkSLUtil.h" 19fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotclass GrGLSLPremulInputFragmentProcessor : public GrGLSLFragmentProcessor { 20fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotpublic: 21fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot GrGLSLPremulInputFragmentProcessor() {} 22fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot void emitCode(EmitArgs& args) override { 23fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 24fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot const GrPremulInputFragmentProcessor& _outer = 25fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot args.fFp.cast<GrPremulInputFragmentProcessor>(); 26fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot (void)_outer; 27fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot fragBuilder->codeAppendf("%s = %s;\n%s.xyz *= %s.w;\n", args.fOutputColor, 28fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot args.fInputColor ? args.fInputColor : "half4(1)", 29fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot args.fOutputColor, 30fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot args.fInputColor ? args.fInputColor : "half4(1)"); 31fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot } 32fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 33fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotprivate: 34fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot void onSetData(const GrGLSLProgramDataManager& pdman, 35fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot const GrFragmentProcessor& _proc) override {} 36fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot}; 37fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team RobotGrGLSLFragmentProcessor* GrPremulInputFragmentProcessor::onCreateGLSLInstance() const { 38fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot return new GrGLSLPremulInputFragmentProcessor(); 39fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot} 40fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotvoid GrPremulInputFragmentProcessor::onGetGLSLProcessorKey(const GrShaderCaps& caps, 41fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot GrProcessorKeyBuilder* b) const {} 42fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotbool GrPremulInputFragmentProcessor::onIsEqual(const GrFragmentProcessor& other) const { 43fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot const GrPremulInputFragmentProcessor& that = other.cast<GrPremulInputFragmentProcessor>(); 44fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot (void)that; 45fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot return true; 46fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot} 47fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team RobotGrPremulInputFragmentProcessor::GrPremulInputFragmentProcessor( 48fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot const GrPremulInputFragmentProcessor& src) 49fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot : INHERITED(kGrPremulInputFragmentProcessor_ClassID, src.optimizationFlags()) {} 50fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotstd::unique_ptr<GrFragmentProcessor> GrPremulInputFragmentProcessor::clone() const { 51fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot return std::unique_ptr<GrFragmentProcessor>(new GrPremulInputFragmentProcessor(*this)); 52fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot} 53fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#endif 54