From 3f6f76f98b6b37d17d1492791ff0feb1b7586bd6 Mon Sep 17 00:00:00 2001 From: cdalton Date: Mon, 11 Apr 2016 12:18:09 -0700 Subject: [PATCH] Rename EmitArgs::fSamplers to fTexSamplers Renames fSamplers to fTexSamplers in GrProcessor EmitArgs, and renames GrGLSLTextureSampler to GrGLSLSampler. This will allow us to add a second array of buffer samplers. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1862373003 Review URL: https://codereview.chromium.org/1862373003 --- .../SkPerlinNoiseShader2.cpp | 16 +++++++------- gyp/gpu.gypi | 2 +- src/core/SkLightingShader.cpp | 4 ++-- src/effects/GrCircleBlurFragmentProcessor.cpp | 2 +- src/effects/SkAlphaThresholdFilter.cpp | 4 ++-- src/effects/SkBlurMaskFilter.cpp | 10 ++++----- src/effects/SkColorCubeFilter.cpp | 4 ++-- src/effects/SkDisplacementMapEffect.cpp | 4 ++-- src/effects/SkLightingImageFilter.cpp | 2 +- src/effects/SkMagnifierImageFilter.cpp | 2 +- src/effects/SkMorphologyImageFilter.cpp | 2 +- src/effects/SkPerlinNoiseShader.cpp | 12 +++++----- src/effects/SkTableColorFilter.cpp | 8 +++---- src/effects/gradients/SkGradientShader.cpp | 4 ++-- src/effects/gradients/SkGradientShaderPriv.h | 2 +- src/effects/gradients/SkLinearGradient.cpp | 2 +- src/effects/gradients/SkRadialGradient.cpp | 2 +- src/effects/gradients/SkSweepGradient.cpp | 2 +- .../SkTwoPointConicalGradient_gpu.cpp | 10 ++++----- src/gpu/effects/GrBicubicEffect.cpp | 2 +- src/gpu/effects/GrBitmapTextGeoProc.cpp | 4 ++-- src/gpu/effects/GrConfigConversionEffect.cpp | 2 +- src/gpu/effects/GrConvolutionEffect.cpp | 2 +- src/gpu/effects/GrDistanceFieldGeoProc.cpp | 10 ++++----- src/gpu/effects/GrMatrixConvolutionEffect.cpp | 4 ++-- src/gpu/effects/GrSimpleTextureEffect.cpp | 2 +- src/gpu/effects/GrTextureDomain.cpp | 6 ++--- src/gpu/effects/GrTextureDomain.h | 4 ++-- src/gpu/effects/GrYUVEffect.cpp | 6 ++--- src/gpu/gl/builders/GrGLProgramBuilder.cpp | 2 +- src/gpu/glsl/GrGLSLFragmentProcessor.cpp | 6 ++--- src/gpu/glsl/GrGLSLFragmentProcessor.h | 11 +++++----- src/gpu/glsl/GrGLSLPrimitiveProcessor.h | 10 ++++----- src/gpu/glsl/GrGLSLProgramBuilder.cpp | 22 +++++++++---------- src/gpu/glsl/GrGLSLProgramBuilder.h | 5 ++--- ...GrGLSLTextureSampler.h => GrGLSLSampler.h} | 18 +++++++-------- src/gpu/glsl/GrGLSLShaderBuilder.cpp | 8 +++---- src/gpu/glsl/GrGLSLShaderBuilder.h | 12 +++++----- src/gpu/glsl/GrGLSLXferProcessor.cpp | 2 +- src/gpu/glsl/GrGLSLXferProcessor.h | 10 ++++----- 40 files changed, 121 insertions(+), 121 deletions(-) rename src/gpu/glsl/{GrGLSLTextureSampler.h => GrGLSLSampler.h} (57%) diff --git a/experimental/SkPerlinNoiseShader2/SkPerlinNoiseShader2.cpp b/experimental/SkPerlinNoiseShader2/SkPerlinNoiseShader2.cpp index 09762b3326..42211e4d7b 100644 --- a/experimental/SkPerlinNoiseShader2/SkPerlinNoiseShader2.cpp +++ b/experimental/SkPerlinNoiseShader2/SkPerlinNoiseShader2.cpp @@ -819,7 +819,7 @@ void GrGLPerlinNoise2::emitCode(EmitArgs& args) { xCoords.appendf("vec2(%s.x, 0.5)", floorVal); noiseCode.appendf("\n\tvec2 %s;\n\t%s.x = ", latticeIdx, latticeIdx); - fsBuilder->appendTextureLookup(&noiseCode, args.fSamplers[0], xCoords.c_str(), + fsBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[0], xCoords.c_str(), kVec2f_GrSLType); noiseCode.append(".r;"); } @@ -830,7 +830,7 @@ void GrGLPerlinNoise2::emitCode(EmitArgs& args) { xCoords.appendf("vec2(%s.z, 0.5)", floorVal); noiseCode.appendf("\n\t%s.y = ", latticeIdx); - fsBuilder->appendTextureLookup(&noiseCode, args.fSamplers[0], xCoords.c_str(), + fsBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[0], xCoords.c_str(), kVec2f_GrSLType); noiseCode.append(".r;"); } @@ -855,7 +855,7 @@ void GrGLPerlinNoise2::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.x, %s)", bcoords, chanCoord); noiseCode.appendf("\n\tvec4 %s = ", lattice); - fsBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fsBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.x = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -867,7 +867,7 @@ void GrGLPerlinNoise2::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.y, %s)", bcoords, chanCoord); noiseCode.append("\n\tlattice = "); - fsBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fsBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.y = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -883,7 +883,7 @@ void GrGLPerlinNoise2::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.w, %s)", bcoords, chanCoord); noiseCode.append("\n\tlattice = "); - fsBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fsBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.y = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -895,7 +895,7 @@ void GrGLPerlinNoise2::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.z, %s)", bcoords, chanCoord); noiseCode.append("\n\tlattice = "); - fsBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fsBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.x = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -1175,7 +1175,7 @@ void GrGLImprovedPerlinNoise::emitCode(EmitArgs& args) { SkString permCode("return "); // FIXME even though I'm creating these textures with kRepeat_TileMode, they're clamped. Not // sure why. Using fract() (here and the next texture lookup) as a workaround. - fsBuilder->appendTextureLookup(&permCode, args.fSamplers[0], "vec2(fract(x / 256.0), 0.0)", + fsBuilder->appendTextureLookup(&permCode, args.fTexSamplers[0], "vec2(fract(x / 256.0), 0.0)", kVec2f_GrSLType); permCode.append(".r * 255.0;"); fsBuilder->emitFunction(kFloat_GrSLType, "perm", SK_ARRAY_COUNT(permArgs), permArgs, @@ -1188,7 +1188,7 @@ void GrGLImprovedPerlinNoise::emitCode(EmitArgs& args) { }; SkString gradFuncName; SkString gradCode("return dot("); - fsBuilder->appendTextureLookup(&gradCode, args.fSamplers[1], "vec2(fract(x / 16.0), 0.0)", + fsBuilder->appendTextureLookup(&gradCode, args.fTexSamplers[1], "vec2(fract(x / 16.0), 0.0)", kVec2f_GrSLType); gradCode.append(".rgb * 255.0 - vec3(1.0), p);"); fsBuilder->emitFunction(kFloat_GrSLType, "grad", SK_ARRAY_COUNT(gradArgs), gradArgs, diff --git a/gyp/gpu.gypi b/gyp/gpu.gypi index 94215c1304..4798a812a7 100644 --- a/gyp/gpu.gypi +++ b/gyp/gpu.gypi @@ -390,10 +390,10 @@ '<(skia_src_path)/gpu/glsl/GrGLSLProgramBuilder.h', '<(skia_src_path)/gpu/glsl/GrGLSLProgramDataManager.cpp', '<(skia_src_path)/gpu/glsl/GrGLSLProgramDataManager.h', + '<(skia_src_path)/gpu/glsl/GrGLSLSampler.h', '<(skia_src_path)/gpu/glsl/GrGLSLShaderBuilder.cpp', '<(skia_src_path)/gpu/glsl/GrGLSLShaderBuilder.h', '<(skia_src_path)/gpu/glsl/GrGLSLShaderVar.h', - '<(skia_src_path)/gpu/glsl/GrGLSLTextureSampler.h', '<(skia_src_path)/gpu/glsl/GrGLSLUniformHandler.h', '<(skia_src_path)/gpu/glsl/GrGLSLUtil.cpp', '<(skia_src_path)/gpu/glsl/GrGLSLUtil.h', diff --git a/src/core/SkLightingShader.cpp b/src/core/SkLightingShader.cpp index bc47af60ee..f37f664d98 100644 --- a/src/core/SkLightingShader.cpp +++ b/src/core/SkLightingShader.cpp @@ -203,13 +203,13 @@ public: "Xform", &xformUniName); fragBuilder->codeAppend("vec4 diffuseColor = "); - fragBuilder->appendTextureLookupAndModulate(args.fInputColor, args.fSamplers[0], + fragBuilder->appendTextureLookupAndModulate(args.fInputColor, args.fTexSamplers[0], args.fCoords[0].c_str(), args.fCoords[0].getType()); fragBuilder->codeAppend(";"); fragBuilder->codeAppend("vec4 normalColor = "); - fragBuilder->appendTextureLookup(args.fSamplers[1], + fragBuilder->appendTextureLookup(args.fTexSamplers[1], args.fCoords[1].c_str(), args.fCoords[1].getType()); fragBuilder->codeAppend(";"); diff --git a/src/effects/GrCircleBlurFragmentProcessor.cpp b/src/effects/GrCircleBlurFragmentProcessor.cpp index 291dafc81a..e9c84ec4ed 100644 --- a/src/effects/GrCircleBlurFragmentProcessor.cpp +++ b/src/effects/GrCircleBlurFragmentProcessor.cpp @@ -65,7 +65,7 @@ void GrGLCircleBlurFragmentProcessor::emitCode(EmitArgs& args) { dataName, dataName); fragBuilder->codeAppendf("float intensity = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], "vec2(dist, 0.5)"); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "vec2(dist, 0.5)"); fragBuilder->codeAppend(".a;"); fragBuilder->codeAppendf("%s = src * intensity;\n", args.fOutputColor ); diff --git a/src/effects/SkAlphaThresholdFilter.cpp b/src/effects/SkAlphaThresholdFilter.cpp index 5a9ad79a9d..0b65188e83 100644 --- a/src/effects/SkAlphaThresholdFilter.cpp +++ b/src/effects/SkAlphaThresholdFilter.cpp @@ -181,10 +181,10 @@ void GrGLAlphaThresholdEffect::emitCode(EmitArgs& args) { fragBuilder->codeAppendf("\t\tvec2 coord = %s;\n", coords2D.c_str()); fragBuilder->codeAppendf("\t\tvec2 mask_coord = %s;\n", maskCoords2D.c_str()); fragBuilder->codeAppend("\t\tvec4 input_color = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], "coord"); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "coord"); fragBuilder->codeAppend(";\n"); fragBuilder->codeAppend("\t\tvec4 mask_color = "); - fragBuilder->appendTextureLookup(args.fSamplers[1], "mask_coord"); + fragBuilder->appendTextureLookup(args.fTexSamplers[1], "mask_coord"); fragBuilder->codeAppend(";\n"); fragBuilder->codeAppendf("\t\tfloat inner_thresh = %s;\n", diff --git a/src/effects/SkBlurMaskFilter.cpp b/src/effects/SkBlurMaskFilter.cpp index 443373e23b..a1acf659ba 100644 --- a/src/effects/SkBlurMaskFilter.cpp +++ b/src/effects/SkBlurMaskFilter.cpp @@ -28,7 +28,7 @@ #include "glsl/GrGLSLFragmentProcessor.h" #include "glsl/GrGLSLFragmentShaderBuilder.h" #include "glsl/GrGLSLProgramDataManager.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" #include "glsl/GrGLSLUniformHandler.h" #endif @@ -691,7 +691,7 @@ private: }; void OutputRectBlurProfileLookup(GrGLSLFPFragmentBuilder* fragBuilder, - const GrGLSLTextureSampler& sampler, + const GrGLSLSampler& sampler, const char *output, const char *profileSize, const char *loc, const char *blurred_width, @@ -761,9 +761,9 @@ void GrGLRectBlurEffect::emitCode(EmitArgs& args) { fragBuilder->codeAppendf("%s vec2 wh = smallDims - vec2(center,center);", precisionString.c_str()); - OutputRectBlurProfileLookup(fragBuilder, args.fSamplers[0], "horiz_lookup", profileSizeName, + OutputRectBlurProfileLookup(fragBuilder, args.fTexSamplers[0], "horiz_lookup", profileSizeName, "translatedPos.x", "width", "wh.x"); - OutputRectBlurProfileLookup(fragBuilder, args.fSamplers[0], "vert_lookup", profileSizeName, + OutputRectBlurProfileLookup(fragBuilder, args.fTexSamplers[0], "vert_lookup", profileSizeName, "translatedPos.y", "height", "wh.y"); fragBuilder->codeAppendf("float final = horiz_lookup * vert_lookup;"); @@ -1120,7 +1120,7 @@ void GrGLRRectBlurEffect::emitCode(EmitArgs& args) { fragBuilder->codeAppendf("vec2 texCoord = translatedFragPos / proxyDims;"); fragBuilder->codeAppendf("%s = ", args.fOutputColor); - fragBuilder->appendTextureLookupAndModulate(args.fInputColor, args.fSamplers[0], "texCoord"); + fragBuilder->appendTextureLookupAndModulate(args.fInputColor, args.fTexSamplers[0], "texCoord"); fragBuilder->codeAppend(";"); } diff --git a/src/effects/SkColorCubeFilter.cpp b/src/effects/SkColorCubeFilter.cpp index 23241c0255..d9e51127a4 100644 --- a/src/effects/SkColorCubeFilter.cpp +++ b/src/effects/SkColorCubeFilter.cpp @@ -277,9 +277,9 @@ void GrColorCubeEffect::GLSLProcessor::emitCode(EmitArgs& args) { // Apply the cube. fragBuilder->codeAppendf("%s = vec4(mix(", args.fOutputColor); - fragBuilder->appendTextureLookup(args.fSamplers[0], cCoords1); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], cCoords1); fragBuilder->codeAppend(".bgr, "); - fragBuilder->appendTextureLookup(args.fSamplers[0], cCoords2); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], cCoords2); // Premultiply color by alpha. Note that the input alpha is not modified by this shader. fragBuilder->codeAppendf(".bgr, fract(%s.b)) * vec3(%s), %s.a);\n", diff --git a/src/effects/SkDisplacementMapEffect.cpp b/src/effects/SkDisplacementMapEffect.cpp index db0a59a1b9..aee15ef753 100644 --- a/src/effects/SkDisplacementMapEffect.cpp +++ b/src/effects/SkDisplacementMapEffect.cpp @@ -551,7 +551,7 @@ void GrGLDisplacementMapEffect::emitCode(EmitArgs& args) { GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; fragBuilder->codeAppendf("\t\tvec4 %s = ", dColor); - fragBuilder->appendTextureLookup(args.fSamplers[0], args.fCoords[0].c_str(), + fragBuilder->appendTextureLookup(args.fTexSamplers[0], args.fCoords[0].c_str(), args.fCoords[0].getType()); fragBuilder->codeAppend(";\n"); @@ -606,7 +606,7 @@ void GrGLDisplacementMapEffect::emitCode(EmitArgs& args) { domain, args.fOutputColor, SkString(cCoords), - args.fSamplers[1]); + args.fTexSamplers[1]); fragBuilder->codeAppend(";\n"); } diff --git a/src/effects/SkLightingImageFilter.cpp b/src/effects/SkLightingImageFilter.cpp index 77ea520995..e60e7ed370 100644 --- a/src/effects/SkLightingImageFilter.cpp +++ b/src/effects/SkLightingImageFilter.cpp @@ -1824,7 +1824,7 @@ void GrGLLightingEffect::emitCode(EmitArgs& args) { le.domain(), temp.c_str(), texCoords, - args.fSamplers[0]); + args.fTexSamplers[0]); fragBuilder->codeAppendf("m[%d] = %s.a;", index, temp.c_str()); index++; } diff --git a/src/effects/SkMagnifierImageFilter.cpp b/src/effects/SkMagnifierImageFilter.cpp index 616aaafcac..50e17d4246 100644 --- a/src/effects/SkMagnifierImageFilter.cpp +++ b/src/effects/SkMagnifierImageFilter.cpp @@ -155,7 +155,7 @@ void GrGLMagnifierEffect::emitCode(EmitArgs& args) { fragBuilder->codeAppend("\t\tvec2 mix_coord = mix(coord, zoom_coord, weight);\n"); fragBuilder->codeAppend("\t\tvec4 output_color = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], "mix_coord"); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "mix_coord"); fragBuilder->codeAppend(";\n"); fragBuilder->codeAppendf("\t\t%s = output_color;", args.fOutputColor); diff --git a/src/effects/SkMorphologyImageFilter.cpp b/src/effects/SkMorphologyImageFilter.cpp index d6e7dfaa31..d0ca20576b 100644 --- a/src/effects/SkMorphologyImageFilter.cpp +++ b/src/effects/SkMorphologyImageFilter.cpp @@ -239,7 +239,7 @@ void GrGLMorphologyEffect::emitCode(EmitArgs& args) { } fragBuilder->codeAppendf("\t\tfor (int i = 0; i < %d; i++) {\n", width); fragBuilder->codeAppendf("\t\t\t%s = %s(%s, ", args.fOutputColor, func, args.fOutputColor); - fragBuilder->appendTextureLookup(args.fSamplers[0], "coord"); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "coord"); fragBuilder->codeAppend(");\n"); // coord.x += pixelSize; fragBuilder->codeAppendf("\t\t\tcoord.%s += %s;\n", dir, pixelSizeInc); diff --git a/src/effects/SkPerlinNoiseShader.cpp b/src/effects/SkPerlinNoiseShader.cpp index c8b04c9975..63916d3ca7 100644 --- a/src/effects/SkPerlinNoiseShader.cpp +++ b/src/effects/SkPerlinNoiseShader.cpp @@ -683,7 +683,7 @@ void GrGLPerlinNoise::emitCode(EmitArgs& args) { xCoords.appendf("vec2(%s.x, 0.5)", floorVal); noiseCode.appendf("\n\tvec2 %s;\n\t%s.x = ", latticeIdx, latticeIdx); - fragBuilder->appendTextureLookup(&noiseCode, args.fSamplers[0], xCoords.c_str(), + fragBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[0], xCoords.c_str(), kVec2f_GrSLType); noiseCode.append(".r;"); } @@ -694,7 +694,7 @@ void GrGLPerlinNoise::emitCode(EmitArgs& args) { xCoords.appendf("vec2(%s.z, 0.5)", floorVal); noiseCode.appendf("\n\t%s.y = ", latticeIdx); - fragBuilder->appendTextureLookup(&noiseCode, args.fSamplers[0], xCoords.c_str(), + fragBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[0], xCoords.c_str(), kVec2f_GrSLType); noiseCode.append(".r;"); } @@ -719,7 +719,7 @@ void GrGLPerlinNoise::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.x, %s)", bcoords, chanCoord); noiseCode.appendf("\n\tvec4 %s = ", lattice); - fragBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fragBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.x = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -731,7 +731,7 @@ void GrGLPerlinNoise::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.y, %s)", bcoords, chanCoord); noiseCode.append("\n\tlattice = "); - fragBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fragBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.y = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -747,7 +747,7 @@ void GrGLPerlinNoise::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.w, %s)", bcoords, chanCoord); noiseCode.append("\n\tlattice = "); - fragBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fragBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.y = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); @@ -759,7 +759,7 @@ void GrGLPerlinNoise::emitCode(EmitArgs& args) { SkString latticeCoords(""); latticeCoords.appendf("vec2(%s.z, %s)", bcoords, chanCoord); noiseCode.append("\n\tlattice = "); - fragBuilder->appendTextureLookup(&noiseCode, args.fSamplers[1], latticeCoords.c_str(), + fragBuilder->appendTextureLookup(&noiseCode, args.fTexSamplers[1], latticeCoords.c_str(), kVec2f_GrSLType); noiseCode.appendf(".bgra;\n\t%s.x = ", uv); noiseCode.appendf(dotLattice, lattice, lattice, inc8bit, fractVal); diff --git a/src/effects/SkTableColorFilter.cpp b/src/effects/SkTableColorFilter.cpp index 10b71f86c6..0994097e6a 100644 --- a/src/effects/SkTableColorFilter.cpp +++ b/src/effects/SkTableColorFilter.cpp @@ -437,22 +437,22 @@ void GLColorTableEffect::emitCode(EmitArgs& args) { fragBuilder->codeAppendf("\t\t%s.a = ", args.fOutputColor); coord.printf("vec2(coord.a, %s.a)", yoffsets); - fragBuilder->appendTextureLookup(args.fSamplers[0], coord.c_str()); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], coord.c_str()); fragBuilder->codeAppend(".a;\n"); fragBuilder->codeAppendf("\t\t%s.r = ", args.fOutputColor); coord.printf("vec2(coord.r, %s.r)", yoffsets); - fragBuilder->appendTextureLookup(args.fSamplers[0], coord.c_str()); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], coord.c_str()); fragBuilder->codeAppend(".a;\n"); fragBuilder->codeAppendf("\t\t%s.g = ", args.fOutputColor); coord.printf("vec2(coord.g, %s.g)", yoffsets); - fragBuilder->appendTextureLookup(args.fSamplers[0], coord.c_str()); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], coord.c_str()); fragBuilder->codeAppend(".a;\n"); fragBuilder->codeAppendf("\t\t%s.b = ", args.fOutputColor); coord.printf("vec2(coord.b, %s.b)", yoffsets); - fragBuilder->appendTextureLookup(args.fSamplers[0], coord.c_str()); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], coord.c_str()); fragBuilder->codeAppend(".a;\n"); fragBuilder->codeAppendf("\t\t%s.rgb *= %s.a;\n", args.fOutputColor, args.fOutputColor); diff --git a/src/effects/gradients/SkGradientShader.cpp b/src/effects/gradients/SkGradientShader.cpp index e305a73a35..6c141dcf80 100644 --- a/src/effects/gradients/SkGradientShader.cpp +++ b/src/effects/gradients/SkGradientShader.cpp @@ -1031,7 +1031,7 @@ void GrGLGradientEffect::emitColor(GrGLSLFPFragmentBuilder* fragBuilder, const char* gradientTValue, const char* outputColor, const char* inputColor, - const TextureSamplerArray& samplers) { + const SamplerArray& texSamplers) { if (SkGradientShaderBase::kTwo_GpuColorType == ge.getColorType()){ fragBuilder->codeAppendf("\tvec4 colorTemp = mix(%s, %s, clamp(%s, 0.0, 1.0));\n", uniformHandler->getUniformVariable(fColorStartUni).c_str(), @@ -1079,7 +1079,7 @@ void GrGLGradientEffect::emitColor(GrGLSLFPFragmentBuilder* fragBuilder, uniformHandler->getUniformVariable(fFSYUni).c_str()); fragBuilder->codeAppendf("\t%s = ", outputColor); fragBuilder->appendTextureLookupAndModulate(inputColor, - samplers[0], + texSamplers[0], "coord"); fragBuilder->codeAppend(";\n"); } diff --git a/src/effects/gradients/SkGradientShaderPriv.h b/src/effects/gradients/SkGradientShaderPriv.h index 1a6d391de3..881f1eb836 100644 --- a/src/effects/gradients/SkGradientShaderPriv.h +++ b/src/effects/gradients/SkGradientShaderPriv.h @@ -423,7 +423,7 @@ protected: const char* gradientTValue, const char* outputColor, const char* inputColor, - const TextureSamplerArray& samplers); + const SamplerArray& texSamplers); private: enum { diff --git a/src/effects/gradients/SkLinearGradient.cpp b/src/effects/gradients/SkLinearGradient.cpp index e9fc865583..d9d323d599 100644 --- a/src/effects/gradients/SkLinearGradient.cpp +++ b/src/effects/gradients/SkLinearGradient.cpp @@ -434,7 +434,7 @@ void GrGLLinearGradient::emitCode(EmitArgs& args) { ge, t.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); } ///////////////////////////////////////////////////////////////////// diff --git a/src/effects/gradients/SkRadialGradient.cpp b/src/effects/gradients/SkRadialGradient.cpp index e666ac3cbd..abd1f9e6cf 100644 --- a/src/effects/gradients/SkRadialGradient.cpp +++ b/src/effects/gradients/SkRadialGradient.cpp @@ -332,7 +332,7 @@ void GrGLRadialGradient::emitCode(EmitArgs& args) { ge, t.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); } ///////////////////////////////////////////////////////////////////// diff --git a/src/effects/gradients/SkSweepGradient.cpp b/src/effects/gradients/SkSweepGradient.cpp index ccc39d10f9..4d210ed41b 100644 --- a/src/effects/gradients/SkSweepGradient.cpp +++ b/src/effects/gradients/SkSweepGradient.cpp @@ -221,7 +221,7 @@ void GrGLSweepGradient::emitCode(EmitArgs& args) { ge, t.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); } ///////////////////////////////////////////////////////////////////// diff --git a/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp b/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp index 4f1dabe6c2..eb4fe0a5ed 100644 --- a/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp +++ b/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp @@ -278,7 +278,7 @@ void GLEdge2PtConicalEffect::emitCode(EmitArgs& args) { tName.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); fragBuilder->codeAppend("\t}\n"); } @@ -545,7 +545,7 @@ void GLFocalOutside2PtConicalEffect::emitCode(EmitArgs& args) { tName.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); fragBuilder->codeAppend("\t}\n"); } @@ -729,7 +729,7 @@ void GLFocalInside2PtConicalEffect::emitCode(EmitArgs& args) { tName.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); } void GLFocalInside2PtConicalEffect::onSetData(const GrGLSLProgramDataManager& pdman, @@ -994,7 +994,7 @@ void GLCircleInside2PtConicalEffect::emitCode(EmitArgs& args) { tName.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); } void GLCircleInside2PtConicalEffect::onSetData(const GrGLSLProgramDataManager& pdman, @@ -1245,7 +1245,7 @@ void GLCircleOutside2PtConicalEffect::emitCode(EmitArgs& args) { tName.c_str(), args.fOutputColor, args.fInputColor, - args.fSamplers); + args.fTexSamplers); fragBuilder->codeAppend("\t}\n"); } diff --git a/src/gpu/effects/GrBicubicEffect.cpp b/src/gpu/effects/GrBicubicEffect.cpp index a74b2d48fb..0a06b62c41 100644 --- a/src/gpu/effects/GrBicubicEffect.cpp +++ b/src/gpu/effects/GrBicubicEffect.cpp @@ -99,7 +99,7 @@ void GrGLBicubicEffect::emitCode(EmitArgs& args) { domain, sampleVar.c_str(), coord, - args.fSamplers[0]); + args.fTexSamplers[0]); } fragBuilder->codeAppendf( "\tvec4 s%d = %s(%s, f.x, rowColors[0], rowColors[1], rowColors[2], rowColors[3]);\n", diff --git a/src/gpu/effects/GrBitmapTextGeoProc.cpp b/src/gpu/effects/GrBitmapTextGeoProc.cpp index b5bae466fd..246d7be627 100644 --- a/src/gpu/effects/GrBitmapTextGeoProc.cpp +++ b/src/gpu/effects/GrBitmapTextGeoProc.cpp @@ -66,14 +66,14 @@ public: if (cte.maskFormat() == kARGB_GrMaskFormat) { fragBuilder->codeAppendf("%s = ", args.fOutputColor); fragBuilder->appendTextureLookupAndModulate(args.fOutputColor, - args.fSamplers[0], + args.fTexSamplers[0], v.fsIn(), kVec2f_GrSLType); fragBuilder->codeAppend(";"); fragBuilder->codeAppendf("%s = vec4(1);", args.fOutputCoverage); } else { fragBuilder->codeAppendf("%s = ", args.fOutputCoverage); - fragBuilder->appendTextureLookup(args.fSamplers[0], v.fsIn(), kVec2f_GrSLType); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], v.fsIn(), kVec2f_GrSLType); fragBuilder->codeAppend(";"); if (cte.maskFormat() == kA565_GrMaskFormat) { // set alpha to be max of rgb coverage diff --git a/src/gpu/effects/GrConfigConversionEffect.cpp b/src/gpu/effects/GrConfigConversionEffect.cpp index bedcc78370..4743f34692 100644 --- a/src/gpu/effects/GrConfigConversionEffect.cpp +++ b/src/gpu/effects/GrConfigConversionEffect.cpp @@ -31,7 +31,7 @@ public: fragBuilder->codeAppendf("%s;", tmpDecl.c_str()); fragBuilder->codeAppendf("%s = ", tmpVar.c_str()); - fragBuilder->appendTextureLookup(args.fSamplers[0], args.fCoords[0].c_str(), + fragBuilder->appendTextureLookup(args.fTexSamplers[0], args.fCoords[0].c_str(), args.fCoords[0].getType()); fragBuilder->codeAppend(";"); diff --git a/src/gpu/effects/GrConvolutionEffect.cpp b/src/gpu/effects/GrConvolutionEffect.cpp index 4f09138493..9567e4c221 100644 --- a/src/gpu/effects/GrConvolutionEffect.cpp +++ b/src/gpu/effects/GrConvolutionEffect.cpp @@ -82,7 +82,7 @@ void GrGLConvolutionEffect::emitCode(EmitArgs& args) { component, bounds, component, bounds); } fragBuilder->codeAppendf("\t\t%s += ", args.fOutputColor); - fragBuilder->appendTextureLookup(args.fSamplers[0], "coord"); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "coord"); fragBuilder->codeAppendf(" * %s;\n", kernelIndex.c_str()); if (ce.useBounds()) { fragBuilder->codeAppend("}"); diff --git a/src/gpu/effects/GrDistanceFieldGeoProc.cpp b/src/gpu/effects/GrDistanceFieldGeoProc.cpp index 5153ad848a..0c4125d962 100644 --- a/src/gpu/effects/GrDistanceFieldGeoProc.cpp +++ b/src/gpu/effects/GrDistanceFieldGeoProc.cpp @@ -101,7 +101,7 @@ public: fragBuilder->codeAppendf("vec2 uv = %s;\n", uv.fsIn()); fragBuilder->codeAppend("\tfloat texColor = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv", kVec2f_GrSLType); fragBuilder->codeAppend(".r;\n"); @@ -338,7 +338,7 @@ public: fragBuilder->codeAppendf("vec2 uv = %s;", v.fsIn()); fragBuilder->codeAppend("float texColor = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv", kVec2f_GrSLType); fragBuilder->codeAppend(".r;"); @@ -607,20 +607,20 @@ public: // green is distance to uv center fragBuilder->codeAppend("\tvec4 texColor = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], "uv", kVec2f_GrSLType); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv", kVec2f_GrSLType); fragBuilder->codeAppend(";\n"); fragBuilder->codeAppend("\tvec3 distance;\n"); fragBuilder->codeAppend("\tdistance.y = texColor.r;\n"); // red is distance to left offset fragBuilder->codeAppend("\tvec2 uv_adjusted = uv - offset;\n"); fragBuilder->codeAppend("\ttexColor = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], "uv_adjusted", kVec2f_GrSLType); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv_adjusted", kVec2f_GrSLType); fragBuilder->codeAppend(";\n"); fragBuilder->codeAppend("\tdistance.x = texColor.r;\n"); // blue is distance to right offset fragBuilder->codeAppend("\tuv_adjusted = uv + offset;\n"); fragBuilder->codeAppend("\ttexColor = "); - fragBuilder->appendTextureLookup(args.fSamplers[0], "uv_adjusted", kVec2f_GrSLType); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv_adjusted", kVec2f_GrSLType); fragBuilder->codeAppend(";\n"); fragBuilder->codeAppend("\tdistance.z = texColor.r;\n"); diff --git a/src/gpu/effects/GrMatrixConvolutionEffect.cpp b/src/gpu/effects/GrMatrixConvolutionEffect.cpp index 21af5351c7..60f518ba24 100644 --- a/src/gpu/effects/GrMatrixConvolutionEffect.cpp +++ b/src/gpu/effects/GrMatrixConvolutionEffect.cpp @@ -86,7 +86,7 @@ void GrGLMatrixConvolutionEffect::emitCode(EmitArgs& args) { domain, "c", coord, - args.fSamplers[0]); + args.fTexSamplers[0]); if (!mce.convolveAlpha()) { fragBuilder->codeAppend("c.rgb /= c.a;"); fragBuilder->codeAppend("c.rgb = clamp(c.rgb, 0.0, 1.0);"); @@ -105,7 +105,7 @@ void GrGLMatrixConvolutionEffect::emitCode(EmitArgs& args) { domain, "c", coords2D, - args.fSamplers[0]); + args.fTexSamplers[0]); fragBuilder->codeAppendf("%s.a = c.a;", args.fOutputColor); fragBuilder->codeAppendf("%s.rgb = sum.rgb * %s + %s;", args.fOutputColor, gain, bias); fragBuilder->codeAppendf("%s.rgb *= %s.a;", args.fOutputColor, args.fOutputColor); diff --git a/src/gpu/effects/GrSimpleTextureEffect.cpp b/src/gpu/effects/GrSimpleTextureEffect.cpp index 904b898c14..f4cbd06af9 100644 --- a/src/gpu/effects/GrSimpleTextureEffect.cpp +++ b/src/gpu/effects/GrSimpleTextureEffect.cpp @@ -17,7 +17,7 @@ public: GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; fragBuilder->codeAppendf("%s = ", args.fOutputColor); fragBuilder->appendTextureLookupAndModulate(args.fInputColor, - args.fSamplers[0], + args.fTexSamplers[0], args.fCoords[0].c_str(), args.fCoords[0].getType()); fragBuilder->codeAppend(";"); diff --git a/src/gpu/effects/GrTextureDomain.cpp b/src/gpu/effects/GrTextureDomain.cpp index 724b3ec21d..4394c0ed64 100644 --- a/src/gpu/effects/GrTextureDomain.cpp +++ b/src/gpu/effects/GrTextureDomain.cpp @@ -12,8 +12,8 @@ #include "glsl/GrGLSLFragmentProcessor.h" #include "glsl/GrGLSLFragmentShaderBuilder.h" #include "glsl/GrGLSLProgramDataManager.h" +#include "glsl/GrGLSLSampler.h" #include "glsl/GrGLSLShaderBuilder.h" -#include "glsl/GrGLSLTextureSampler.h" #include "glsl/GrGLSLUniformHandler.h" GrTextureDomain::GrTextureDomain(const SkRect& domain, Mode mode, int index) @@ -49,7 +49,7 @@ void GrTextureDomain::GLDomain::sampleTexture(GrGLSLShaderBuilder* builder, const GrTextureDomain& textureDomain, const char* outColor, const SkString& inCoords, - const GrGLSLTextureSampler& sampler, + const GrGLSLSampler& sampler, const char* inModulateColor) { SkASSERT((Mode)-1 == fMode || textureDomain.mode() == fMode); SkDEBUGCODE(fMode = textureDomain.mode();) @@ -198,7 +198,7 @@ void GrGLTextureDomainEffect::emitCode(EmitArgs& args) { domain, args.fOutputColor, coords2D, - args.fSamplers[0], + args.fTexSamplers[0], args.fInputColor); } diff --git a/src/gpu/effects/GrTextureDomain.h b/src/gpu/effects/GrTextureDomain.h index e88f5d5fd0..2877c3927e 100644 --- a/src/gpu/effects/GrTextureDomain.h +++ b/src/gpu/effects/GrTextureDomain.h @@ -15,7 +15,7 @@ class GrGLProgramBuilder; class GrGLSLShaderBuilder; class GrInvariantOutput; -class GrGLSLTextureSampler; +class GrGLSLSampler; class GrGLSLUniformHandler; struct SkRect; @@ -120,7 +120,7 @@ public: const GrTextureDomain& textureDomain, const char* outColor, const SkString& inCoords, - const GrGLSLTextureSampler& sampler, + const GrGLSLSampler& sampler, const char* inModulateColor = nullptr); /** diff --git a/src/gpu/effects/GrYUVEffect.cpp b/src/gpu/effects/GrYUVEffect.cpp index ef1bf1bfd7..97ef663bb7 100644 --- a/src/gpu/effects/GrYUVEffect.cpp +++ b/src/gpu/effects/GrYUVEffect.cpp @@ -106,13 +106,13 @@ public: kMat44f_GrSLType, kDefault_GrSLPrecision, "ColorSpaceMatrix", &colorSpaceMatrix); fragBuilder->codeAppendf("%s = vec4(", args.fOutputColor); - fragBuilder->appendTextureLookup(args.fSamplers[0], args.fCoords[0].c_str(), + fragBuilder->appendTextureLookup(args.fTexSamplers[0], args.fCoords[0].c_str(), args.fCoords[0].getType()); fragBuilder->codeAppend(".r,"); - fragBuilder->appendTextureLookup(args.fSamplers[1], args.fCoords[1].c_str(), + fragBuilder->appendTextureLookup(args.fTexSamplers[1], args.fCoords[1].c_str(), args.fCoords[1].getType()); fragBuilder->codeAppend(".r,"); - fragBuilder->appendTextureLookup(args.fSamplers[2], args.fCoords[2].c_str(), + fragBuilder->appendTextureLookup(args.fTexSamplers[2], args.fCoords[2].c_str(), args.fCoords[2].getType()); fragBuilder->codeAppendf(".r, 1.0) * %s;", colorSpaceMatrix); } diff --git a/src/gpu/gl/builders/GrGLProgramBuilder.cpp b/src/gpu/gl/builders/GrGLProgramBuilder.cpp index fe617fbaee..fbe1722ded 100644 --- a/src/gpu/gl/builders/GrGLProgramBuilder.cpp +++ b/src/gpu/gl/builders/GrGLProgramBuilder.cpp @@ -23,7 +23,7 @@ #include "glsl/GrGLSLFragmentProcessor.h" #include "glsl/GrGLSLGeometryProcessor.h" #include "glsl/GrGLSLProgramDataManager.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" #include "glsl/GrGLSLXferProcessor.h" #define GL_CALL(X) GR_GL_CALL(this->gpu()->glInterface(), X) diff --git a/src/gpu/glsl/GrGLSLFragmentProcessor.cpp b/src/gpu/glsl/GrGLSLFragmentProcessor.cpp index ac3d734c90..c3e57bc314 100644 --- a/src/gpu/glsl/GrGLSLFragmentProcessor.cpp +++ b/src/gpu/glsl/GrGLSLFragmentProcessor.cpp @@ -81,12 +81,12 @@ void GrGLSLFragmentProcessor::internalEmitChild(int childIndex, const char* inpu firstSamplerAt += args.fFp.childProcessor(i).numTextures(); } GrGLSLTransformedCoordsArray childCoords; - TextureSamplerArray childSamplers; + SamplerArray childTexSamplers; if (childProc.numTransforms() > 0) { childCoords.push_back_n(childProc.numTransforms(), &args.fCoords[firstCoordAt]); } if (childProc.numTextures() > 0) { - childSamplers.push_back_n(childProc.numTextures(), &args.fSamplers[firstSamplerAt]); + childTexSamplers.push_back_n(childProc.numTextures(), &args.fTexSamplers[firstSamplerAt]); } // emit the code for the child in its own scope @@ -100,7 +100,7 @@ void GrGLSLFragmentProcessor::internalEmitChild(int childIndex, const char* inpu outputColor, inputColor, childCoords, - childSamplers); + childTexSamplers); this->childProcessor(childIndex)->emitCode(childArgs); fragBuilder->codeAppend("}\n"); diff --git a/src/gpu/glsl/GrGLSLFragmentProcessor.h b/src/gpu/glsl/GrGLSLFragmentProcessor.h index ae2d69dbce..5c71340a1c 100644 --- a/src/gpu/glsl/GrGLSLFragmentProcessor.h +++ b/src/gpu/glsl/GrGLSLFragmentProcessor.h @@ -8,9 +8,10 @@ #ifndef GrGLSLFragmentProcessor_DEFINED #define GrGLSLFragmentProcessor_DEFINED +#include "GrFragmentProcessor.h" #include "glsl/GrGLSLProcessorTypes.h" #include "glsl/GrGLSLProgramDataManager.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" class GrProcessor; class GrProcessorKeyBuilder; @@ -30,7 +31,7 @@ public: } typedef GrGLSLProgramDataManager::UniformHandle UniformHandle; - typedef GrGLSLTextureSampler::TextureSamplerArray TextureSamplerArray; + typedef GrGLSLSampler::SamplerArray SamplerArray; /** Called when the program stage should insert its code into the shaders. The code in each shader will be in its own block ({}) and so locally scoped names will not collide across @@ -59,7 +60,7 @@ public: const char* outputColor, const char* inputColor, const GrGLSLTransformedCoordsArray& coords, - const TextureSamplerArray& samplers) + const SamplerArray& texSamplers) : fFragBuilder(fragBuilder) , fUniformHandler(uniformHandler) , fGLSLCaps(caps) @@ -67,7 +68,7 @@ public: , fOutputColor(outputColor) , fInputColor(inputColor) , fCoords(coords) - , fSamplers(samplers) {} + , fTexSamplers(texSamplers) {} GrGLSLFPFragmentBuilder* fFragBuilder; GrGLSLUniformHandler* fUniformHandler; const GrGLSLCaps* fGLSLCaps; @@ -75,7 +76,7 @@ public: const char* fOutputColor; const char* fInputColor; const GrGLSLTransformedCoordsArray& fCoords; - const TextureSamplerArray& fSamplers; + const SamplerArray& fTexSamplers; }; virtual void emitCode(EmitArgs&) = 0; diff --git a/src/gpu/glsl/GrGLSLPrimitiveProcessor.h b/src/gpu/glsl/GrGLSLPrimitiveProcessor.h index ccfbc3e3a5..fc0c4788b5 100644 --- a/src/gpu/glsl/GrGLSLPrimitiveProcessor.h +++ b/src/gpu/glsl/GrGLSLPrimitiveProcessor.h @@ -11,7 +11,7 @@ #include "GrPrimitiveProcessor.h" #include "glsl/GrGLSLProcessorTypes.h" #include "glsl/GrGLSLProgramDataManager.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" class GrBatchTracker; class GrPrimitiveProcessor; @@ -27,7 +27,7 @@ public: virtual ~GrGLSLPrimitiveProcessor() {} typedef GrGLSLProgramDataManager::UniformHandle UniformHandle; - typedef GrGLSLTextureSampler::TextureSamplerArray TextureSamplerArray; + typedef GrGLSLSampler::SamplerArray SamplerArray; typedef SkSTArray<2, const GrCoordTransform*, true> ProcCoords; typedef SkSTArray<8, ProcCoords> TransformsIn; @@ -42,7 +42,7 @@ public: const GrPrimitiveProcessor& gp, const char* outputColor, const char* outputCoverage, - const TextureSamplerArray& samplers, + const SamplerArray& texSamplers, const TransformsIn& transformsIn, TransformsOut* transformsOut) : fVertBuilder(vertBuilder) @@ -53,7 +53,7 @@ public: , fGP(gp) , fOutputColor(outputColor) , fOutputCoverage(outputCoverage) - , fSamplers(samplers) + , fTexSamplers(texSamplers) , fTransformsIn(transformsIn) , fTransformsOut(transformsOut) {} GrGLSLVertexBuilder* fVertBuilder; @@ -64,7 +64,7 @@ public: const GrPrimitiveProcessor& fGP; const char* fOutputColor; const char* fOutputCoverage; - const TextureSamplerArray& fSamplers; + const SamplerArray& fTexSamplers; const TransformsIn& fTransformsIn; TransformsOut* fTransformsOut; }; diff --git a/src/gpu/glsl/GrGLSLProgramBuilder.cpp b/src/gpu/glsl/GrGLSLProgramBuilder.cpp index 4e90452925..ccb078b144 100644 --- a/src/gpu/glsl/GrGLSLProgramBuilder.cpp +++ b/src/gpu/glsl/GrGLSLProgramBuilder.cpp @@ -97,8 +97,8 @@ void GrGLSLProgramBuilder::emitAndInstallPrimProc(const GrPrimitiveProcessor& pr SkASSERT(!fGeometryProcessor); fGeometryProcessor = proc.createGLSLInstance(*this->glslCaps()); - SkSTArray<4, GrGLSLTextureSampler> samplers(proc.numTextures()); - this->emitSamplers(proc, &samplers); + SkSTArray<4, GrGLSLSampler> texSamplers(proc.numTextures()); + this->emitSamplers(proc, &texSamplers); GrGLSLGeometryProcessor::EmitArgs args(&fVS, &fFS, @@ -108,7 +108,7 @@ void GrGLSLProgramBuilder::emitAndInstallPrimProc(const GrPrimitiveProcessor& pr proc, outputColor->c_str(), outputCoverage->c_str(), - samplers, + texSamplers, fCoordTransforms, &fOutCoords); fGeometryProcessor->emitCode(args); @@ -148,8 +148,8 @@ void GrGLSLProgramBuilder::emitAndInstallFragProc(const GrFragmentProcessor& fp, GrGLSLFragmentProcessor* fragProc = fp.createGLSLInstance(); - SkSTArray<4, GrGLSLTextureSampler> samplers(fp.numTextures()); - this->emitSamplers(fp, &samplers); + SkSTArray<4, GrGLSLSampler> texSamplers(fp.numTextures()); + this->emitSamplers(fp, &texSamplers); GrGLSLFragmentProcessor::EmitArgs args(&fFS, this->uniformHandler(), @@ -158,7 +158,7 @@ void GrGLSLProgramBuilder::emitAndInstallFragProc(const GrFragmentProcessor& fp, output->c_str(), input.isOnes() ? nullptr : input.c_str(), fOutCoords[index], - samplers); + texSamplers); fragProc->emitCode(args); // We have to check that effects and the code they emit are consistent, ie if an effect @@ -193,8 +193,8 @@ void GrGLSLProgramBuilder::emitAndInstallXferProc(const GrXferProcessor& xp, openBrace.printf("{ // Xfer Processor: %s\n", xp.name()); fFS.codeAppend(openBrace.c_str()); - SkSTArray<4, GrGLSLTextureSampler> samplers(xp.numTextures()); - this->emitSamplers(xp, &samplers); + SkSTArray<4, GrGLSLSampler> texSamplers(xp.numTextures()); + this->emitSamplers(xp, &texSamplers); bool usePLSDstRead = (plsState == GrPixelLocalStorageState::kFinish_GrPixelLocalStorageState); GrGLSLXferProcessor::EmitArgs args(&fFS, @@ -204,7 +204,7 @@ void GrGLSLProgramBuilder::emitAndInstallXferProc(const GrXferProcessor& xp, ignoresCoverage ? nullptr : coverageIn.c_str(), fFS.getPrimaryColorOutputName(), fFS.getSecondaryColorOutputName(), - samplers, + texSamplers, usePLSDstRead); fXferProcessor->emitCode(args); @@ -215,7 +215,7 @@ void GrGLSLProgramBuilder::emitAndInstallXferProc(const GrXferProcessor& xp, } void GrGLSLProgramBuilder::emitSamplers(const GrProcessor& processor, - GrGLSLTextureSampler::TextureSamplerArray* outSamplers) { + GrGLSLSampler::SamplerArray* outTexSamplers) { int numTextures = processor.numTextures(); UniformHandle* localSamplerUniforms = fSamplerUniforms.push_back_n(numTextures); SkString name; @@ -248,7 +248,7 @@ void GrGLSLProgramBuilder::emitSamplers(const GrProcessor& processor, samplerType, precision, name.c_str()); - outSamplers->emplace_back(localSamplerUniforms[t], access); + outTexSamplers->emplace_back(localSamplerUniforms[t], access.getTexture()->config()); } } diff --git a/src/gpu/glsl/GrGLSLProgramBuilder.h b/src/gpu/glsl/GrGLSLProgramBuilder.h index 952db7e09b..4d253c73bf 100644 --- a/src/gpu/glsl/GrGLSLProgramBuilder.h +++ b/src/gpu/glsl/GrGLSLProgramBuilder.h @@ -15,7 +15,7 @@ #include "glsl/GrGLSLPrimitiveProcessor.h" #include "glsl/GrGLSLProgramDataManager.h" #include "glsl/GrGLSLUniformHandler.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" #include "glsl/GrGLSLVertexShaderBuilder.h" #include "glsl/GrGLSLXferProcessor.h" @@ -146,8 +146,7 @@ private: const GrGLSLExpr4& coverageIn, bool ignoresCoverage, GrPixelLocalStorageState plsState); - void emitSamplers(const GrProcessor& processor, - GrGLSLTextureSampler::TextureSamplerArray* outSamplers); + void emitSamplers(const GrProcessor& processor, GrGLSLSampler::SamplerArray* outTexSamplers); void emitFSOutputSwizzle(bool hasSecondaryOutput); bool checkSamplerCounts(); diff --git a/src/gpu/glsl/GrGLSLTextureSampler.h b/src/gpu/glsl/GrGLSLSampler.h similarity index 57% rename from src/gpu/glsl/GrGLSLTextureSampler.h rename to src/gpu/glsl/GrGLSLSampler.h index fd8bcb26e9..0fc67a9c93 100644 --- a/src/gpu/glsl/GrGLSLTextureSampler.h +++ b/src/gpu/glsl/GrGLSLSampler.h @@ -1,25 +1,25 @@ /* - * Copyright 2015 Google Inc. + * Copyright 2016 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ -#ifndef GrGLSLTextureSampler_DEFINED -#define GrGLSLTextureSampler_DEFINED +#ifndef GrGLSLSampler_DEFINED +#define GrGLSLSampler_DEFINED -#include "GrShaderVar.h" -#include "GrTextureAccess.h" +#include "GrTypes.h" +#include "SkTArray.h" #include "glsl/GrGLSLProgramDataManager.h" -class GrGLSLTextureSampler { +class GrGLSLSampler { public: typedef GrGLSLProgramDataManager::UniformHandle UniformHandle; - typedef SkTArray TextureSamplerArray; + typedef SkTArray SamplerArray; - GrGLSLTextureSampler(UniformHandle uniform, const GrTextureAccess& access) + GrGLSLSampler(UniformHandle uniform, GrPixelConfig config) : fSamplerUniform(uniform) - , fConfig(access.getTexture()->config()) { + , fConfig(config) { SkASSERT(kUnknown_GrPixelConfig != fConfig); } diff --git a/src/gpu/glsl/GrGLSLShaderBuilder.cpp b/src/gpu/glsl/GrGLSLShaderBuilder.cpp index 795e5cb585..91a0f9b1b5 100644 --- a/src/gpu/glsl/GrGLSLShaderBuilder.cpp +++ b/src/gpu/glsl/GrGLSLShaderBuilder.cpp @@ -9,7 +9,7 @@ #include "glsl/GrGLSLShaderBuilder.h" #include "glsl/GrGLSLCaps.h" #include "glsl/GrGLSLShaderVar.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" #include "glsl/GrGLSLProgramBuilder.h" GrGLSLShaderBuilder::GrGLSLShaderBuilder(GrGLSLProgramBuilder* program) @@ -63,7 +63,7 @@ void GrGLSLShaderBuilder::emitFunction(GrSLType returnType, } void GrGLSLShaderBuilder::appendTextureLookup(SkString* out, - const GrGLSLTextureSampler& sampler, + const GrGLSLSampler& sampler, const char* coordName, GrSLType varyingType) const { const GrGLSLCaps* glslCaps = fProgramBuilder->glslCaps(); @@ -103,14 +103,14 @@ void GrGLSLShaderBuilder::appendTextureLookup(SkString* out, } } -void GrGLSLShaderBuilder::appendTextureLookup(const GrGLSLTextureSampler& sampler, +void GrGLSLShaderBuilder::appendTextureLookup(const GrGLSLSampler& sampler, const char* coordName, GrSLType varyingType) { this->appendTextureLookup(&this->code(), sampler, coordName, varyingType); } void GrGLSLShaderBuilder::appendTextureLookupAndModulate(const char* modulation, - const GrGLSLTextureSampler& sampler, + const GrGLSLSampler& sampler, const char* coordName, GrSLType varyingType) { SkString lookup; diff --git a/src/gpu/glsl/GrGLSLShaderBuilder.h b/src/gpu/glsl/GrGLSLShaderBuilder.h index cddf7b2db4..6f8bf68bab 100644 --- a/src/gpu/glsl/GrGLSLShaderBuilder.h +++ b/src/gpu/glsl/GrGLSLShaderBuilder.h @@ -15,7 +15,7 @@ #include class GrGLSLProgramBuilder; -class GrGLSLTextureSampler; +class GrGLSLSampler; /** base class for all shaders builders @@ -27,25 +27,25 @@ public: /** Appends a 2D texture sample with projection if necessary. coordType must either be Vec2f or Vec3f. The latter is interpreted as projective texture coords. The vec length and swizzle - order of the result depends on the GrTextureAccess associated with the GrGLSLTextureSampler. + order of the result depends on the GrTextureAccess associated with the GrGLSLSampler. */ void appendTextureLookup(SkString* out, - const GrGLSLTextureSampler&, + const GrGLSLSampler&, const char* coordName, GrSLType coordType = kVec2f_GrSLType) const; /** Version of above that appends the result to the fragment shader code instead.*/ - void appendTextureLookup(const GrGLSLTextureSampler&, + void appendTextureLookup(const GrGLSLSampler&, const char* coordName, GrSLType coordType = kVec2f_GrSLType); /** Does the work of appendTextureLookup and modulates the result by modulation. The result is - always a vec4. modulation and the swizzle specified by GrGLSLTextureSampler must both be + always a vec4. modulation and the swizzle specified by GrGLSLSampler must both be vec4 or float. If modulation is "" or nullptr it this function acts as though appendTextureLookup were called. */ void appendTextureLookupAndModulate(const char* modulation, - const GrGLSLTextureSampler&, + const GrGLSLSampler&, const char* coordName, GrSLType coordType = kVec2f_GrSLType); diff --git a/src/gpu/glsl/GrGLSLXferProcessor.cpp b/src/gpu/glsl/GrGLSLXferProcessor.cpp index c4b62be525..f0f5efd37b 100644 --- a/src/gpu/glsl/GrGLSLXferProcessor.cpp +++ b/src/gpu/glsl/GrGLSLXferProcessor.cpp @@ -57,7 +57,7 @@ void GrGLSLXferProcessor::emitCode(const EmitArgs& args) { } fragBuilder->codeAppendf("vec4 %s = ", dstColor); - fragBuilder->appendTextureLookup(args.fSamplers[0], "_dstTexCoord", kVec2f_GrSLType); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], "_dstTexCoord", kVec2f_GrSLType); fragBuilder->codeAppend(";"); } diff --git a/src/gpu/glsl/GrGLSLXferProcessor.h b/src/gpu/glsl/GrGLSLXferProcessor.h index 478956df34..3f190ce82f 100644 --- a/src/gpu/glsl/GrGLSLXferProcessor.h +++ b/src/gpu/glsl/GrGLSLXferProcessor.h @@ -9,7 +9,7 @@ #define GrGLSLXferProcessor_DEFINED #include "glsl/GrGLSLProgramDataManager.h" -#include "glsl/GrGLSLTextureSampler.h" +#include "glsl/GrGLSLSampler.h" class GrXferProcessor; class GrGLSLCaps; @@ -22,7 +22,7 @@ public: GrGLSLXferProcessor() {} virtual ~GrGLSLXferProcessor() {} - typedef GrGLSLTextureSampler::TextureSamplerArray TextureSamplerArray; + typedef GrGLSLSampler::SamplerArray SamplerArray; struct EmitArgs { EmitArgs(GrGLSLXPFragmentBuilder* fragBuilder, GrGLSLUniformHandler* uniformHandler, @@ -32,7 +32,7 @@ public: const char* inputCoverage, const char* outputPrimary, const char* outputSecondary, - const TextureSamplerArray& samplers, + const SamplerArray& texSamplers, const bool usePLSDstRead) : fXPFragBuilder(fragBuilder) , fUniformHandler(uniformHandler) @@ -42,7 +42,7 @@ public: , fInputCoverage(inputCoverage) , fOutputPrimary(outputPrimary) , fOutputSecondary(outputSecondary) - , fSamplers(samplers) + , fTexSamplers(texSamplers) , fUsePLSDstRead(usePLSDstRead) {} GrGLSLXPFragmentBuilder* fXPFragBuilder; @@ -53,7 +53,7 @@ public: const char* fInputCoverage; const char* fOutputPrimary; const char* fOutputSecondary; - const TextureSamplerArray& fSamplers; + const SamplerArray& fTexSamplers; bool fUsePLSDstRead; }; /** -- 2.34.1