diff options
author | wangyix <wangyix@google.com> | 2015-07-22 15:08:53 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-07-22 15:08:53 -0700 |
commit | 7c157a988845fb00f9024d6db6dda142c3458033 (patch) | |
tree | 3a3523e91c6ec7501afd200d5402ba41347a73f8 /src/gpu/effects/GrYUVtoRGBEffect.cpp | |
parent | 243406e5800ad4ff296da8d4cb30d0a33d6f7b2a (diff) |
Added GrGLFragmentProcessor::EmitArgs struct for use with emitCode()
BUG=skia:
Review URL: https://codereview.chromium.org/1251173002
Diffstat (limited to 'src/gpu/effects/GrYUVtoRGBEffect.cpp')
-rw-r--r-- | src/gpu/effects/GrYUVtoRGBEffect.cpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/gpu/effects/GrYUVtoRGBEffect.cpp b/src/gpu/effects/GrYUVtoRGBEffect.cpp index 7e62868c95..3bfc216474 100644 --- a/src/gpu/effects/GrYUVtoRGBEffect.cpp +++ b/src/gpu/effects/GrYUVtoRGBEffect.cpp @@ -61,24 +61,22 @@ public: GLProcessor(const GrProcessor&) {} - virtual void emitCode(GrGLFPBuilder* builder, - const GrFragmentProcessor&, - const char* outputColor, - const char* inputColor, - const TransformedCoordsArray& coords, - const TextureSamplerArray& samplers) override { - GrGLFragmentBuilder* fsBuilder = builder->getFragmentShaderBuilder(); + virtual void emitCode(EmitArgs& args) override { + GrGLFragmentBuilder* fsBuilder = args.fBuilder->getFragmentShaderBuilder(); const char* yuvMatrix = NULL; - fMatrixUni = builder->addUniform(GrGLProgramBuilder::kFragment_Visibility, + fMatrixUni = args.fBuilder->addUniform(GrGLProgramBuilder::kFragment_Visibility, kMat44f_GrSLType, kDefault_GrSLPrecision, "YUVMatrix", &yuvMatrix); - fsBuilder->codeAppendf("\t%s = vec4(\n\t\t", outputColor); - fsBuilder->appendTextureLookup(samplers[0], coords[0].c_str(), coords[0].getType()); + fsBuilder->codeAppendf("\t%s = vec4(\n\t\t", args.fOutputColor); + fsBuilder->appendTextureLookup(args.fSamplers[0], args.fCoords[0].c_str(), + args.fCoords[0].getType()); fsBuilder->codeAppend(".r,\n\t\t"); - fsBuilder->appendTextureLookup(samplers[1], coords[1].c_str(), coords[1].getType()); + fsBuilder->appendTextureLookup(args.fSamplers[1], args.fCoords[1].c_str(), + args.fCoords[1].getType()); fsBuilder->codeAppend(".r,\n\t\t"); - fsBuilder->appendTextureLookup(samplers[2], coords[2].c_str(), coords[2].getType()); + fsBuilder->appendTextureLookup(args.fSamplers[2], args.fCoords[2].c_str(), + args.fCoords[2].getType()); fsBuilder->codeAppendf(".r,\n\t\t1.0) * %s;\n", yuvMatrix); } |