aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/PerlinNoiseBench.cpp
diff options
context:
space:
mode:
authorGravatar Florin Malita <fmalita@chromium.org>2017-05-18 11:52:59 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-05-18 17:24:39 +0000
commit14d54c207d7a175d14d34f5527af7cbfd579f4d5 (patch)
tree9874290e610d098b7c55f2156c126d52eb360f93 /bench/PerlinNoiseBench.cpp
parent94df1841ec695e01ba22c475c011a0a531a20262 (diff)
Hide SkPerlinNoiseShader impl details
Move the shader impl to a private class, leave SkPerlinNoiseShader as a factory class only (similar to e.g. SkLightingShader). Change-Id: Ic1180db8f5dfd3d8f6fba133c6bf6bbdfa4f97a4 Reviewed-on: https://skia-review.googlesource.com/17318 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
Diffstat (limited to 'bench/PerlinNoiseBench.cpp')
-rw-r--r--bench/PerlinNoiseBench.cpp16
1 files changed, 6 insertions, 10 deletions
diff --git a/bench/PerlinNoiseBench.cpp b/bench/PerlinNoiseBench.cpp
index 6c98374bc3..802c5be021 100644
--- a/bench/PerlinNoiseBench.cpp
+++ b/bench/PerlinNoiseBench.cpp
@@ -7,6 +7,7 @@
#include "Benchmark.h"
#include "SkCanvas.h"
#include "SkPerlinNoiseShader.h"
+#include "SkShader.h"
class PerlinNoiseBench : public Benchmark {
SkISize fSize;
@@ -22,8 +23,7 @@ protected:
}
void onDraw(int loops, SkCanvas* canvas) override {
- this->test(loops, canvas, 0, 0, SkPerlinNoiseShader::kFractalNoise_Type,
- 0.1f, 0.1f, 3, 0, false);
+ this->test(loops, canvas, 0, 0, 0.1f, 0.1f, 3, 0, false);
}
private:
@@ -38,17 +38,13 @@ private:
canvas->restore();
}
- void test(int loops, SkCanvas* canvas, int x, int y, SkPerlinNoiseShader::Type type,
+ void test(int loops, SkCanvas* canvas, int x, int y,
float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed,
bool stitchTiles) {
- sk_sp<SkShader> shader = (type == SkPerlinNoiseShader::kFractalNoise_Type) ?
- SkPerlinNoiseShader::MakeFractalNoise(baseFrequencyX, baseFrequencyY, numOctaves,
- seed, stitchTiles ? &fSize : nullptr) :
- SkPerlinNoiseShader::MakeTurbulence(baseFrequencyX, baseFrequencyY, numOctaves,
- seed, stitchTiles ? &fSize : nullptr);
SkPaint paint;
- paint.setShader(shader);
-
+ paint.setShader(SkPerlinNoiseShader::MakeFractalNoise(baseFrequencyX, baseFrequencyY,
+ numOctaves, seed,
+ stitchTiles ? &fSize : nullptr));
for (int i = 0; i < loops; i++) {
this->drawClippedRect(canvas, x, y, paint);
}