diff options
author | reed <reed@google.com> | 2016-03-13 14:13:58 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-13 14:13:58 -0700 |
commit | 1a9b9640843a64af8d9d90337ec3b3fea663196a (patch) | |
tree | 37dae22b03c887f2f0087309bbac84c983c828c5 /tests | |
parent | 9283d20afc27571f7a871d1bd1100dd5df584941 (diff) |
Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )"
This reverts commit 9283d20afc27571f7a871d1bd1100dd5df584941.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1793303002
Review URL: https://codereview.chromium.org/1793303002
Diffstat (limited to 'tests')
-rw-r--r-- | tests/BitmapHeapTest.cpp | 5 | ||||
-rw-r--r-- | tests/BlitRowTest.cpp | 6 | ||||
-rw-r--r-- | tests/CanvasTest.cpp | 5 | ||||
-rw-r--r-- | tests/DrawBitmapRectTest.cpp | 6 | ||||
-rw-r--r-- | tests/GradientTest.cpp | 72 | ||||
-rw-r--r-- | tests/ImageFilterTest.cpp | 7 | ||||
-rw-r--r-- | tests/PaintImageFilterTest.cpp | 10 | ||||
-rw-r--r-- | tests/PictureShaderTest.cpp | 12 | ||||
-rw-r--r-- | tests/PictureTest.cpp | 9 | ||||
-rw-r--r-- | tests/RecorderTest.cpp | 2 | ||||
-rw-r--r-- | tests/ShaderOpacityTest.cpp | 32 |
11 files changed, 59 insertions, 107 deletions
diff --git a/tests/BitmapHeapTest.cpp b/tests/BitmapHeapTest.cpp index eb86283618..89e6faf764 100644 --- a/tests/BitmapHeapTest.cpp +++ b/tests/BitmapHeapTest.cpp @@ -50,9 +50,8 @@ DEF_TEST(BitmapHeap, reporter) { uint32_t* pixel = bm.getAddr32(1,0); *pixel = SK_ColorBLUE; - SkShader* bitmapShader = SkShader::CreateBitmapShader(bm, SkShader::kRepeat_TileMode, - SkShader::kRepeat_TileMode); - SkAutoTUnref<SkShader> aur(bitmapShader); + auto bitmapShader = SkShader::MakeBitmapShader(bm, SkShader::kRepeat_TileMode, + SkShader::kRepeat_TileMode); // Flatten, storing it in the bitmap heap. SkBitmapHeap heap(1, 1); diff --git a/tests/BlitRowTest.cpp b/tests/BlitRowTest.cpp index b6a24eb98d..032acdac39 100644 --- a/tests/BlitRowTest.cpp +++ b/tests/BlitRowTest.cpp @@ -166,10 +166,8 @@ struct Mesh { fPts[1].set(w, 0); fPts[2].set(w, h); fPts[3].set(0, h); - SkShader* s = SkShader::CreateBitmapShader(bm, SkShader::kClamp_TileMode, - SkShader::kClamp_TileMode); - paint->setShader(s)->unref(); - + paint->setShader(SkShader::MakeBitmapShader(bm, SkShader::kClamp_TileMode, + SkShader::kClamp_TileMode)); } void draw(SkCanvas* canvas, SkPaint* paint) { diff --git a/tests/CanvasTest.cpp b/tests/CanvasTest.cpp index f34430f475..8681ca4f18 100644 --- a/tests/CanvasTest.cpp +++ b/tests/CanvasTest.cpp @@ -415,9 +415,8 @@ static void DrawVerticesShaderTestStep(SkCanvas* canvas, const TestData& d, pts[2].set(SkIntToScalar(d.fWidth), SkIntToScalar(d.fHeight)); pts[3].set(0, SkIntToScalar(d.fHeight)); SkPaint paint; - SkShader* shader = SkShader::CreateBitmapShader(d.fBitmap, - SkShader::kClamp_TileMode, SkShader::kClamp_TileMode); - paint.setShader(shader)->unref(); + paint.setShader(SkShader::MakeBitmapShader(d.fBitmap, SkShader::kClamp_TileMode, + SkShader::kClamp_TileMode)); canvas->drawVertices(SkCanvas::kTriangleFan_VertexMode, 4, pts, pts, nullptr, nullptr, nullptr, 0, paint); } diff --git a/tests/DrawBitmapRectTest.cpp b/tests/DrawBitmapRectTest.cpp index 88b9437935..8928d4c909 100644 --- a/tests/DrawBitmapRectTest.cpp +++ b/tests/DrawBitmapRectTest.cpp @@ -195,11 +195,9 @@ static void test_wacky_bitmapshader(skiatest::Reporter* reporter, 0.0078740157f, SkIntToScalar(239), 0, 0, SK_Scalar1); - SkShader* s = SkShader::CreateBitmapShader(bm, SkShader::kRepeat_TileMode, - SkShader::kRepeat_TileMode, &matrix); - SkPaint paint; - paint.setShader(s)->unref(); + paint.setShader(SkShader::MakeBitmapShader(bm, SkShader::kRepeat_TileMode, + SkShader::kRepeat_TileMode, &matrix)); SkRect r = SkRect::MakeXYWH(681, 239, 695, 253); c.drawRect(r, paint); diff --git a/tests/GradientTest.cpp b/tests/GradientTest.cpp index cc94cbaf75..6521070552 100644 --- a/tests/GradientTest.cpp +++ b/tests/GradientTest.cpp @@ -20,9 +20,9 @@ static void test_big_grad(skiatest::Reporter* reporter) { const SkColor colors[] = { SK_ColorRED, SK_ColorBLUE }; const SkPoint pts[] = {{ 15, 14.7112684f }, { 0.709064007f, 12.6108112f }}; - SkShader* s = SkGradientShader::CreateLinear(pts, colors, nullptr, 2, SkShader::kClamp_TileMode); SkPaint paint; - paint.setShader(s)->unref(); + paint.setShader(SkGradientShader::MakeLinear(pts, colors, nullptr, 2, + SkShader::kClamp_TileMode)); SkBitmap bm; bm.allocN32Pixels(2000, 1); @@ -46,7 +46,7 @@ struct GradRec { const SkScalar* fRadius; // 2 SkShader::TileMode fTileMode; - void gradCheck(skiatest::Reporter* reporter, SkShader* shader, + void gradCheck(skiatest::Reporter* reporter, const sk_sp<SkShader>& shader, SkShader::GradientInfo* info, SkShader::GradientType gt) const { SkAutoTMalloc<SkColor> colorStorage(fColorCount); @@ -68,7 +68,7 @@ struct GradRec { static void none_gradproc(skiatest::Reporter* reporter, const GradRec&) { - SkAutoTUnref<SkShader> s(SkShader::CreateEmptyShader()); + sk_sp<SkShader> s(SkShader::MakeEmptyShader()); REPORTER_ASSERT(reporter, SkShader::kNone_GradientType == s->asAGradient(nullptr)); } @@ -84,11 +84,8 @@ static void color_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { } static void linear_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { - SkAutoTUnref<SkShader> s(SkGradientShader::CreateLinear(rec.fPoint, - rec.fColors, - rec.fPos, - rec.fColorCount, - rec.fTileMode)); + sk_sp<SkShader> s(SkGradientShader::MakeLinear(rec.fPoint, rec.fColors, rec.fPos, + rec.fColorCount, rec.fTileMode)); SkShader::GradientInfo info; rec.gradCheck(reporter, s, &info, SkShader::kLinear_GradientType); @@ -96,12 +93,8 @@ static void linear_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { } static void radial_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { - SkAutoTUnref<SkShader> s(SkGradientShader::CreateRadial(rec.fPoint[0], - rec.fRadius[0], - rec.fColors, - rec.fPos, - rec.fColorCount, - rec.fTileMode)); + sk_sp<SkShader> s(SkGradientShader::MakeRadial(rec.fPoint[0], rec.fRadius[0], rec.fColors, + rec.fPos, rec.fColorCount, rec.fTileMode)); SkShader::GradientInfo info; rec.gradCheck(reporter, s, &info, SkShader::kRadial_GradientType); @@ -110,11 +103,8 @@ static void radial_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { } static void sweep_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { - SkAutoTUnref<SkShader> s(SkGradientShader::CreateSweep(rec.fPoint[0].fX, - rec.fPoint[0].fY, - rec.fColors, - rec.fPos, - rec.fColorCount)); + sk_sp<SkShader> s(SkGradientShader::MakeSweep(rec.fPoint[0].fX, rec.fPoint[0].fY, rec.fColors, + rec.fPos, rec.fColorCount)); SkShader::GradientInfo info; rec.gradCheck(reporter, s, &info, SkShader::kSweep_GradientType); @@ -122,14 +112,14 @@ static void sweep_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { } static void conical_gradproc(skiatest::Reporter* reporter, const GradRec& rec) { - SkAutoTUnref<SkShader> s(SkGradientShader::CreateTwoPointConical(rec.fPoint[0], - rec.fRadius[0], - rec.fPoint[1], - rec.fRadius[1], - rec.fColors, - rec.fPos, - rec.fColorCount, - rec.fTileMode)); + sk_sp<SkShader> s(SkGradientShader::MakeTwoPointConical(rec.fPoint[0], + rec.fRadius[0], + rec.fPoint[1], + rec.fRadius[1], + rec.fColors, + rec.fPos, + rec.fColorCount, + rec.fTileMode)); SkShader::GradientInfo info; rec.gradCheck(reporter, s, &info, SkShader::kConical_GradientType); @@ -145,15 +135,10 @@ static void TestConstantGradient(skiatest::Reporter*) { }; SkColor colors[] = { SK_ColorBLUE, SK_ColorBLUE }; const SkScalar pos[] = { 0, SK_Scalar1 }; - SkAutoTUnref<SkShader> s(SkGradientShader::CreateLinear(pts, - colors, - pos, - 2, - SkShader::kClamp_TileMode)); + SkPaint paint; + paint.setShader(SkGradientShader::MakeLinear(pts, colors, pos, 2, SkShader::kClamp_TileMode)); SkBitmap outBitmap; outBitmap.allocN32Pixels(10, 1); - SkPaint paint; - paint.setShader(s.get()); SkCanvas canvas(outBitmap); canvas.drawPaint(paint); SkAutoLockPixels alp(outBitmap); @@ -204,11 +189,8 @@ static void test_nearly_vertical(skiatest::Reporter* reporter) { const SkPoint pts[] = {{ 100, 50 }, { 100.0001f, 50000 }}; const SkColor colors[] = { SK_ColorBLACK, SK_ColorWHITE }; const SkScalar pos[] = { 0, 1 }; - SkAutoTUnref<SkShader> gradient( - SkGradientShader::CreateLinear(pts, colors, pos, 2, SkShader::kClamp_TileMode)); - SkPaint paint; - paint.setShader(gradient); + paint.setShader(SkGradientShader::MakeLinear(pts, colors, pos, 2, SkShader::kClamp_TileMode)); surface->getCanvas()->drawPaint(paint); } @@ -224,12 +206,9 @@ static void test_linear_fuzz(skiatest::Reporter* reporter) { const SkColor colors[] = { SK_ColorBLACK, SK_ColorWHITE, SK_ColorBLACK, SK_ColorWHITE }; const SkScalar pos[] = {0, 0.200000003f, 0.800000012f, 1 }; - - SkAutoTUnref<SkShader> gradient( - SkGradientShader::CreateLinear(pts, colors, pos, 4, SkShader::kClamp_TileMode)); - SkPaint paint; - paint.setShader(gradient); + paint.setShader(SkGradientShader::MakeLinear(pts, colors, pos, 4, SkShader::kClamp_TileMode)); + SkRect r = {0, 83, 1254, 620}; surface->getCanvas()->drawRect(r, paint); } @@ -241,12 +220,11 @@ static void test_two_point_conical_zero_radius(skiatest::Reporter* reporter) { surface->getCanvas()->clear(SK_ColorRED); const SkColor colors[] = { SK_ColorGREEN, SK_ColorBLUE }; - SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical( + SkPaint p; + p.setShader(SkGradientShader::MakeTwoPointConical( SkPoint::Make(2.5f, 2.5f), 0, SkPoint::Make(3.0f, 3.0f), 10, colors, nullptr, SK_ARRAY_COUNT(colors), SkShader::kClamp_TileMode)); - SkPaint p; - p.setShader(shader); surface->getCanvas()->drawPaint(p); // r == 0 for the center pixel. diff --git a/tests/ImageFilterTest.cpp b/tests/ImageFilterTest.cpp index 3def8f5cca..dfb0d35e48 100644 --- a/tests/ImageFilterTest.cpp +++ b/tests/ImageFilterTest.cpp @@ -374,12 +374,9 @@ static SkBitmap make_gradient_circle(int width, int height) { SkColor colors[2]; colors[0] = SK_ColorWHITE; colors[1] = SK_ColorBLACK; - SkAutoTUnref<SkShader> shader( - SkGradientShader::CreateRadial(SkPoint::Make(x, y), radius, colors, nullptr, 2, - SkShader::kClamp_TileMode) - ); SkPaint paint; - paint.setShader(shader); + paint.setShader(SkGradientShader::MakeRadial(SkPoint::Make(x, y), radius, colors, nullptr, 2, + SkShader::kClamp_TileMode)); canvas.drawCircle(x, y, radius, paint); return bitmap; } diff --git a/tests/PaintImageFilterTest.cpp b/tests/PaintImageFilterTest.cpp index b71fe47119..f1c0c2eb97 100644 --- a/tests/PaintImageFilterTest.cpp +++ b/tests/PaintImageFilterTest.cpp @@ -30,10 +30,9 @@ static void test_unscaled(skiatest::Reporter* reporter) { SkScalar pos[] = {0, SK_ScalarHalf, SK_Scalar1}; SkScalar radius = SkIntToScalar(5); - SkAutoTUnref<SkShader> s(SkGradientShader::CreateRadial( - center, radius, colors, pos, SK_ARRAY_COUNT(colors), SkShader::kClamp_TileMode)); SkPaint gradientPaint; - gradientPaint.setShader(s); + gradientPaint.setShader(SkGradientShader::MakeRadial( + center, radius, colors, pos, SK_ARRAY_COUNT(colors), SkShader::kClamp_TileMode)); // Test using the image filter { @@ -77,10 +76,9 @@ static void test_scaled(skiatest::Reporter* reporter) { SkScalar pos[] = {0, SK_ScalarHalf, SK_Scalar1}; SkScalar radius = SkIntToScalar(5); - SkAutoTUnref<SkShader> s(SkGradientShader::CreateRadial( - center, radius, colors, pos, SK_ARRAY_COUNT(colors), SkShader::kClamp_TileMode)); SkPaint gradientPaint; - gradientPaint.setShader(s); + gradientPaint.setShader(SkGradientShader::MakeRadial( + center, radius, colors, pos, SK_ARRAY_COUNT(colors), SkShader::kClamp_TileMode)); // Test using the image filter { diff --git a/tests/PictureShaderTest.cpp b/tests/PictureShaderTest.cpp index 14bdcf2d81..4da7aab511 100644 --- a/tests/PictureShaderTest.cpp +++ b/tests/PictureShaderTest.cpp @@ -22,9 +22,8 @@ DEF_TEST(PictureShader_empty, reporter) { SkCanvas canvas(bitmap); canvas.clear(SK_ColorGREEN); - SkShader* shader = SkShader::CreatePictureShader( - nullptr, SkShader::kClamp_TileMode, SkShader::kClamp_TileMode, nullptr, nullptr); - paint.setShader(shader)->unref(); + paint.setShader(SkShader::MakePictureShader( + nullptr, SkShader::kClamp_TileMode, SkShader::kClamp_TileMode, nullptr, nullptr)); canvas.drawRect(SkRect::MakeWH(1,1), paint); REPORTER_ASSERT(reporter, *bitmap.getAddr32(0,0) == SK_ColorGREEN); @@ -32,10 +31,9 @@ DEF_TEST(PictureShader_empty, reporter) { SkPictureRecorder factory; factory.beginRecording(0, 0, nullptr, 0); - SkAutoTUnref<SkPicture> picture(factory.endRecording()); - shader = SkShader::CreatePictureShader( - picture.get(), SkShader::kClamp_TileMode, SkShader::kClamp_TileMode, nullptr, nullptr); - paint.setShader(shader)->unref(); + sk_sp<SkPicture> picture(factory.endRecording()); + paint.setShader(SkShader::MakePictureShader(std::move(picture), SkShader::kClamp_TileMode, + SkShader::kClamp_TileMode, nullptr, nullptr)); canvas.drawRect(SkRect::MakeWH(1,1), paint); REPORTER_ASSERT(reporter, *bitmap.getAddr32(0,0) == SK_ColorGREEN); diff --git a/tests/PictureTest.cpp b/tests/PictureTest.cpp index 448e079958..3654a77173 100644 --- a/tests/PictureTest.cpp +++ b/tests/PictureTest.cpp @@ -79,10 +79,9 @@ static void test_analysis(skiatest::Reporter* reporter) { bitmap.allocPixels(SkImageInfo::MakeN32Premul(2, 2)); bitmap.eraseColor(SK_ColorBLUE); *(bitmap.getAddr32(0, 0)) = SK_ColorGREEN; - SkShader* shader = SkShader::CreateBitmapShader(bitmap, SkShader::kClamp_TileMode, - SkShader::kClamp_TileMode); - paint.setShader(shader)->unref(); - REPORTER_ASSERT(reporter, shader->isABitmap()); + paint.setShader(SkShader::MakeBitmapShader(bitmap, SkShader::kClamp_TileMode, + SkShader::kClamp_TileMode)); + REPORTER_ASSERT(reporter, paint.getShader()->isABitmap()); canvas->drawRect(SkRect::MakeWH(10, 10), paint); } @@ -1389,7 +1388,7 @@ DEF_TEST(Picture_getRecordingCanvas, r) { DEF_TEST(MiniRecorderLeftHanging, r) { // Any shader or other ref-counted effect will do just fine here. SkPaint paint; - paint.setShader(SkShader::CreateColorShader(SK_ColorRED))->unref(); + paint.setShader(SkShader::MakeColorShader(SK_ColorRED)); SkMiniRecorder rec; REPORTER_ASSERT(r, rec.drawRect(SkRect::MakeWH(20,30), paint)); diff --git a/tests/RecorderTest.cpp b/tests/RecorderTest.cpp index b4bc58dddd..9d7fda5483 100644 --- a/tests/RecorderTest.cpp +++ b/tests/RecorderTest.cpp @@ -58,7 +58,7 @@ DEF_TEST(Recorder_RefLeaking, r) { SkRect bounds = SkRect::MakeWH(320, 240); SkPaint paint; - paint.setShader(SkShader::CreateEmptyShader())->unref(); + paint.setShader(SkShader::MakeEmptyShader()); REPORTER_ASSERT(r, paint.getShader()->unique()); { diff --git a/tests/ShaderOpacityTest.cpp b/tests/ShaderOpacityTest.cpp index 90d25d731a..698d5442d8 100644 --- a/tests/ShaderOpacityTest.cpp +++ b/tests/ShaderOpacityTest.cpp @@ -17,42 +17,36 @@ static void test_bitmap(skiatest::Reporter* reporter) { bmp.setInfo(info); // test 1: bitmap without pixel data - SkShader* shader = SkShader::CreateBitmapShader(bmp, + auto shader = SkShader::MakeBitmapShader(bmp, SkShader::kClamp_TileMode, SkShader::kClamp_TileMode); REPORTER_ASSERT(reporter, shader); REPORTER_ASSERT(reporter, !shader->isOpaque()); - shader->unref(); // From this point on, we have pixels bmp.allocPixels(info); // test 2: not opaque by default - shader = SkShader::CreateBitmapShader(bmp, + shader = SkShader::MakeBitmapShader(bmp, SkShader::kClamp_TileMode, SkShader::kClamp_TileMode); REPORTER_ASSERT(reporter, shader); REPORTER_ASSERT(reporter, !shader->isOpaque()); - shader->unref(); // test 3: explicitly opaque bmp.setAlphaType(kOpaque_SkAlphaType); - shader = SkShader::CreateBitmapShader(bmp, + shader = SkShader::MakeBitmapShader(bmp, SkShader::kClamp_TileMode, SkShader::kClamp_TileMode); REPORTER_ASSERT(reporter, shader); REPORTER_ASSERT(reporter, shader->isOpaque()); - shader->unref(); // test 4: explicitly not opaque bmp.setAlphaType(kPremul_SkAlphaType); - shader = SkShader::CreateBitmapShader(bmp, + shader = SkShader::MakeBitmapShader(bmp, SkShader::kClamp_TileMode, SkShader::kClamp_TileMode); REPORTER_ASSERT(reporter, shader); REPORTER_ASSERT(reporter, !shader->isOpaque()); - shader->unref(); - } -static void test_gradient(skiatest::Reporter* reporter) -{ +static void test_gradient(skiatest::Reporter* reporter) { SkPoint pts[2]; pts[0].iset(0, 0); pts[1].iset(1, 0); @@ -64,39 +58,33 @@ static void test_gradient(skiatest::Reporter* reporter) // test 1: all opaque colors[0] = SkColorSetARGB(0xFF, 0, 0, 0); colors[1] = SkColorSetARGB(0xFF, 0, 0, 0); - SkShader* grad = SkGradientShader::CreateLinear(pts, colors, pos, count, - mode); + auto grad = SkGradientShader::MakeLinear(pts, colors, pos, count, mode); REPORTER_ASSERT(reporter, grad); REPORTER_ASSERT(reporter, grad->isOpaque()); - grad->unref(); // test 2: all 0 alpha colors[0] = SkColorSetARGB(0, 0, 0, 0); colors[1] = SkColorSetARGB(0, 0, 0, 0); - grad = SkGradientShader::CreateLinear(pts, colors, pos, count, mode); + grad = SkGradientShader::MakeLinear(pts, colors, pos, count, mode); REPORTER_ASSERT(reporter, grad); REPORTER_ASSERT(reporter, !grad->isOpaque()); - grad->unref(); // test 3: one opaque, one transparent colors[0] = SkColorSetARGB(0xFF, 0, 0, 0); colors[1] = SkColorSetARGB(0x40, 0, 0, 0); - grad = SkGradientShader::CreateLinear(pts, colors, pos, count, mode); + grad = SkGradientShader::MakeLinear(pts, colors, pos, count, mode); REPORTER_ASSERT(reporter, grad); REPORTER_ASSERT(reporter, !grad->isOpaque()); - grad->unref(); // test 4: test 3, swapped colors[0] = SkColorSetARGB(0x40, 0, 0, 0); colors[1] = SkColorSetARGB(0xFF, 0, 0, 0); - grad = SkGradientShader::CreateLinear(pts, colors, pos, count, mode); + grad = SkGradientShader::MakeLinear(pts, colors, pos, count, mode); REPORTER_ASSERT(reporter, grad); REPORTER_ASSERT(reporter, !grad->isOpaque()); - grad->unref(); } -static void test_color(skiatest::Reporter* reporter) -{ +static void test_color(skiatest::Reporter* reporter) { SkColorShader colorShader1(SkColorSetARGB(0,0,0,0)); REPORTER_ASSERT(reporter, !colorShader1.isOpaque()); SkColorShader colorShader2(SkColorSetARGB(0xFF,0,0,0)); |