aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/shaders/SkPerlinNoiseShader.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2018-07-30 14:48:15 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-07-30 19:40:03 +0000
commitf7dcd76c552a4e93a75a3808289de69a997da169 (patch)
tree29fe08e9681f29e3d3d2af8e721ecfba6dd09beb /src/shaders/SkPerlinNoiseShader.cpp
parent7226c232d73356a37ec8cfef0ed55147e68dd2fd (diff)
Remove array of TextureSampler pointers from GrIOResourceProcessor.
Instead store sampler count on base class and subclasses implement a virtual to get the ith sampler. Change-Id: I13e2447a6467a09761d8615acb4aa360b87b1476 Reviewed-on: https://skia-review.googlesource.com/141563 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src/shaders/SkPerlinNoiseShader.cpp')
-rw-r--r--src/shaders/SkPerlinNoiseShader.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/shaders/SkPerlinNoiseShader.cpp b/src/shaders/SkPerlinNoiseShader.cpp
index 4bc44a6eef..0fc11a3055 100644
--- a/src/shaders/SkPerlinNoiseShader.cpp
+++ b/src/shaders/SkPerlinNoiseShader.cpp
@@ -764,8 +764,7 @@ private:
, fPermutationsSampler(std::move(permutationsProxy))
, fNoiseSampler(std::move(noiseProxy))
, fPaintingData(std::move(paintingData)) {
- this->addTextureSampler(&fPermutationsSampler);
- this->addTextureSampler(&fNoiseSampler);
+ this->setTextureSamplerCnt(2);
fCoordTransform.reset(matrix);
this->addCoordTransform(&fCoordTransform);
}
@@ -779,11 +778,14 @@ private:
, fPermutationsSampler(that.fPermutationsSampler)
, fNoiseSampler(that.fNoiseSampler)
, fPaintingData(new SkPerlinNoiseShaderImpl::PaintingData(*that.fPaintingData)) {
- this->addTextureSampler(&fPermutationsSampler);
- this->addTextureSampler(&fNoiseSampler);
+ this->setTextureSamplerCnt(2);
this->addCoordTransform(&fCoordTransform);
}
+ const TextureSampler& onTextureSampler(int i) const override {
+ return IthTextureSampler(i, fPermutationsSampler, fNoiseSampler);
+ }
+
GR_DECLARE_FRAGMENT_PROCESSOR_TEST
SkPerlinNoiseShaderImpl::Type fType;
@@ -1185,8 +1187,7 @@ private:
, fPermutationsSampler(std::move(permutationsProxy))
, fGradientSampler(std::move(gradientProxy))
, fPaintingData(std::move(paintingData)) {
- this->addTextureSampler(&fPermutationsSampler);
- this->addTextureSampler(&fGradientSampler);
+ this->setTextureSamplerCnt(2);
fCoordTransform.reset(matrix);
this->addCoordTransform(&fCoordTransform);
}
@@ -1199,11 +1200,14 @@ private:
, fPermutationsSampler(that.fPermutationsSampler)
, fGradientSampler(that.fGradientSampler)
, fPaintingData(new SkPerlinNoiseShaderImpl::PaintingData(*that.fPaintingData)) {
- this->addTextureSampler(&fPermutationsSampler);
- this->addTextureSampler(&fGradientSampler);
+ this->setTextureSamplerCnt(2);
this->addCoordTransform(&fCoordTransform);
}
+ const TextureSampler& onTextureSampler(int i) const override {
+ return IthTextureSampler(i, fPermutationsSampler, fGradientSampler);
+ }
+
GR_DECLARE_FRAGMENT_PROCESSOR_TEST
GrCoordTransform fCoordTransform;