diff options
author | 2016-03-25 09:08:00 -0700 | |
---|---|---|
committer | 2016-03-25 09:08:00 -0700 | |
commit | fe63045f075165b1be5d3e7fc5c710021d85f53b (patch) | |
tree | c60f764504ba1d622613a432c88e43f7f65c0fec /gm | |
parent | cce49271124ff75c880dc0dfed1489f02c82890b (diff) |
move setshader to sk_sp, re-using SK_SUPPORT_LEGACY_CREATESHADER_PTR
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1829303002
Review URL: https://codereview.chromium.org/1829303002
Diffstat (limited to 'gm')
-rw-r--r-- | gm/dcshader.cpp | 2 | ||||
-rw-r--r-- | gm/discard.cpp | 4 | ||||
-rw-r--r-- | gm/image.cpp | 12 | ||||
-rw-r--r-- | gm/imagefiltersclipped.cpp | 2 | ||||
-rw-r--r-- | gm/imagefiltersscaled.cpp | 2 | ||||
-rw-r--r-- | gm/lightingshader.cpp | 9 | ||||
-rw-r--r-- | gm/perlinnoise.cpp | 22 | ||||
-rw-r--r-- | gm/pictureshader.cpp | 7 | ||||
-rw-r--r-- | gm/samplerstress.cpp | 2 |
9 files changed, 27 insertions, 35 deletions
diff --git a/gm/dcshader.cpp b/gm/dcshader.cpp index 4dedf74093..ed2b058e51 100644 --- a/gm/dcshader.cpp +++ b/gm/dcshader.cpp @@ -257,7 +257,7 @@ protected: for (int i = 0; i < fPrims.count(); ++i) { for (int j = 0; j < devMats.count(); ++j) { for (int k = 0; k < viewMats.count(); ++k) { - paint.setShader(new DCShader(devMats[j]))->unref(); + paint.setShader(sk_make_sp<DCShader>(devMats[j])); paint.setAntiAlias(SkToBool(aa)); canvas->save(); canvas->concat(viewMats[k]); diff --git a/gm/discard.cpp b/gm/discard.cpp index d75f0ab141..136458170e 100644 --- a/gm/discard.cpp +++ b/gm/discard.cpp @@ -7,7 +7,6 @@ #include "gm.h" #include "SkCanvas.h" -#include "SkColorShader.h" #include "SkPaint.h" #include "SkRandom.h" #include "SkSurface.h" @@ -66,9 +65,8 @@ protected: surface->getCanvas()->clear(color); break; case 2: - SkColorShader shader(color); SkPaint paint; - paint.setShader(&shader); + paint.setShader(SkShader::MakeColorShader(color)); surface->getCanvas()->drawPaint(paint); break; } diff --git a/gm/image.cpp b/gm/image.cpp index 8cc3023edf..c86be079d9 100644 --- a/gm/image.cpp +++ b/gm/image.cpp @@ -76,8 +76,8 @@ static void test_surface(SkCanvas* canvas, SkSurface* surf, bool usePaint) { // paint.setFilterBitmap(true); // paint.setAlpha(0x80); - canvas->drawImage(imgR.get(), 0, 0, usePaint ? &paint : nullptr); - canvas->drawImage(imgG.get(), 0, 80, usePaint ? &paint : nullptr); + canvas->drawImage(imgR, 0, 0, usePaint ? &paint : nullptr); + canvas->drawImage(imgG, 0, 80, usePaint ? &paint : nullptr); surf->draw(canvas, 0, 160, usePaint ? &paint : nullptr); SkRect src1, src2, src3; @@ -92,10 +92,10 @@ static void test_surface(SkCanvas* canvas, SkSurface* surf, bool usePaint) { dst3.set(0, 400, 65, 465); dst4.set(0, 480, 65, 545); - canvas->drawImageRect(imgR.get(), src1, dst1, usePaint ? &paint : nullptr); - canvas->drawImageRect(imgG.get(), src2, dst2, usePaint ? &paint : nullptr); - canvas->drawImageRect(imgR.get(), src3, dst3, usePaint ? &paint : nullptr); - canvas->drawImageRect(imgG.get(), dst4, usePaint ? &paint : nullptr); + canvas->drawImageRect(imgR, src1, dst1, usePaint ? &paint : nullptr); + canvas->drawImageRect(imgG, src2, dst2, usePaint ? &paint : nullptr); + canvas->drawImageRect(imgR, src3, dst3, usePaint ? &paint : nullptr); + canvas->drawImageRect(imgG, dst4, usePaint ? &paint : nullptr); } class ImageGM : public skiagm::GM { diff --git a/gm/imagefiltersclipped.cpp b/gm/imagefiltersclipped.cpp index 01b0a43fcb..7c75bf3951 100644 --- a/gm/imagefiltersclipped.cpp +++ b/gm/imagefiltersclipped.cpp @@ -90,7 +90,7 @@ protected: SkAutoTUnref<SkImageFilter> gradient(SkImageSource::Create(fGradientCircle.get())); SkAutoTUnref<SkImageFilter> checkerboard(SkImageSource::Create(fCheckerboard.get())); - SkAutoTUnref<SkShader> noise(SkPerlinNoiseShader::CreateFractalNoise( + sk_sp<SkShader> noise(SkPerlinNoiseShader::MakeFractalNoise( SkDoubleToScalar(0.1), SkDoubleToScalar(0.05), 1, 0)); SkMatrix resizeMatrix; resizeMatrix.setScale(RESIZE_FACTOR_X, RESIZE_FACTOR_Y); diff --git a/gm/imagefiltersscaled.cpp b/gm/imagefiltersscaled.cpp index 9c0150001c..21d070456b 100644 --- a/gm/imagefiltersscaled.cpp +++ b/gm/imagefiltersscaled.cpp @@ -54,7 +54,7 @@ protected: SkAutoTUnref<SkImageFilter> gradient(SkImageSource::Create(fGradientCircle.get())); SkAutoTUnref<SkImageFilter> checkerboard(SkImageSource::Create(fCheckerboard.get())); - SkAutoTUnref<SkShader> noise(SkPerlinNoiseShader::CreateFractalNoise( + sk_sp<SkShader> noise(SkPerlinNoiseShader::MakeFractalNoise( SkDoubleToScalar(0.1), SkDoubleToScalar(0.05), 1, 0)); SkPaint noisePaint; noisePaint.setShader(noise); diff --git a/gm/lightingshader.cpp b/gm/lightingshader.cpp index 9c45c9b783..6d25671ac2 100644 --- a/gm/lightingshader.cpp +++ b/gm/lightingshader.cpp @@ -98,14 +98,9 @@ protected: // TODO: correctly pull out the pure rotation SkVector invNormRotation = { ctm[SkMatrix::kMScaleX], ctm[SkMatrix::kMSkewY] }; - SkAutoTUnref<SkShader> fShader(SkLightingShader::Create( - fDiffuse, - fNormalMaps[mapType], - fLights, - invNormRotation, &matrix, &matrix)); - SkPaint paint; - paint.setShader(fShader); + paint.setShader(SkLightingShader::Make(fDiffuse, fNormalMaps[mapType], fLights, + invNormRotation, &matrix, &matrix)); canvas->drawRect(r, paint); } diff --git a/gm/perlinnoise.cpp b/gm/perlinnoise.cpp index 92f0f963c3..b3ece9dcb6 100644 --- a/gm/perlinnoise.cpp +++ b/gm/perlinnoise.cpp @@ -37,13 +37,13 @@ protected: float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed, bool stitchTiles) { SkISize tileSize = SkISize::Make(fSize.width() / 2, fSize.height() / 2); - SkShader* shader = (type == SkPerlinNoiseShader::kFractalNoise_Type) ? - SkPerlinNoiseShader::CreateFractalNoise(baseFrequencyX, baseFrequencyY, numOctaves, - seed, stitchTiles ? &tileSize : nullptr) : - SkPerlinNoiseShader::CreateTurbulence(baseFrequencyX, baseFrequencyY, numOctaves, + sk_sp<SkShader> shader = (type == SkPerlinNoiseShader::kFractalNoise_Type) ? + SkPerlinNoiseShader::MakeFractalNoise(baseFrequencyX, baseFrequencyY, numOctaves, + seed, stitchTiles ? &tileSize : nullptr) : + SkPerlinNoiseShader::MakeTurbulence(baseFrequencyX, baseFrequencyY, numOctaves, seed, stitchTiles ? &tileSize : nullptr); SkPaint paint; - paint.setShader(shader)->unref(); + paint.setShader(std::move(shader)); if (stitchTiles) { drawRect(canvas, x, y, paint, tileSize); x += tileSize.width(); @@ -110,12 +110,12 @@ protected: void install(SkPaint* paint, SkPerlinNoiseShader::Type type, float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed, bool stitchTiles) { - SkShader* shader = (type == SkPerlinNoiseShader::kFractalNoise_Type) ? - SkPerlinNoiseShader::CreateFractalNoise(baseFrequencyX, baseFrequencyY, numOctaves, - seed, stitchTiles ? &fSize : nullptr) : - SkPerlinNoiseShader::CreateTurbulence(baseFrequencyX, baseFrequencyY, numOctaves, - seed, stitchTiles ? &fSize : nullptr); - paint->setShader(shader)->unref(); + 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); + paint->setShader(std::move(shader)); } virtual void onDraw(SkCanvas* canvas) { diff --git a/gm/pictureshader.cpp b/gm/pictureshader.cpp index 0916744c69..d54144f938 100644 --- a/gm/pictureshader.cpp +++ b/gm/pictureshader.cpp @@ -194,9 +194,6 @@ DEF_SIMPLE_GM(tiled_picture_shader, canvas, 400, 400) { c->drawLine(20, 20, 80, 80, p); sk_sp<SkPicture> picture(recorder.finishRecordingAsPicture()); - sk_sp<SkShader> shader(SkShader::MakePictureShader(picture, SkShader::kRepeat_TileMode, - SkShader::kRepeat_TileMode, - nullptr, nullptr)); p.setColor(sk_tool_utils::color_to_565(0xFF8BC34A)); // green canvas->drawPaint(p); @@ -204,7 +201,9 @@ DEF_SIMPLE_GM(tiled_picture_shader, canvas, 400, 400) { canvas->clipRect(SkRect::MakeXYWH(0, 0, 400, 350)); p.setColor(sk_tool_utils::color_to_565(0xFFB6B6B6)); // gray canvas->drawPaint(p); - p.setShader(shader.get()); + p.setShader(SkShader::MakePictureShader(std::move(picture), SkShader::kRepeat_TileMode, + SkShader::kRepeat_TileMode, + nullptr, nullptr)); canvas->drawPaint(p); } diff --git a/gm/samplerstress.cpp b/gm/samplerstress.cpp index f317cf9103..10e3cacd03 100644 --- a/gm/samplerstress.cpp +++ b/gm/samplerstress.cpp @@ -95,7 +95,7 @@ protected: SkPaint paint; paint.setAntiAlias(true); paint.setTextSize(72); - paint.setShader(fShader.get()); + paint.setShader(fShader); paint.setMaskFilter(fMaskFilter.get()); sk_tool_utils::set_portable_typeface(&paint); |