diff options
author | Brian Osman <brianosman@google.com> | 2016-12-05 16:12:48 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2016-12-09 19:34:47 +0000 |
commit | d263413a2a92cafe3fd3b051c67d00206c9a0e4d (patch) | |
tree | f127dd2c03ef707cd47396be0bf1cbf911403849 /gm/image.cpp | |
parent | 784b7bf493c37236e3fe571aed6105939a9bc0c3 (diff) |
Remove SkImage::makeTextureImage
No one (other than test code) was using this API, and it lacks the context
to do the right thing. Specifically, if this forces a decode of an encoded
image, we don't know the intended use (re: color spaces) to determine how
we should decode.
BUG=skia:
Change-Id: I6ff700b3a5adce8257f35c5e3dd5ba557b2a3219
Reviewed-on: https://skia-review.googlesource.com/5614
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Diffstat (limited to 'gm/image.cpp')
-rw-r--r-- | gm/image.cpp | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/gm/image.cpp b/gm/image.cpp index 6545c0a5f4..c1d3372db0 100644 --- a/gm/image.cpp +++ b/gm/image.cpp @@ -424,86 +424,3 @@ private: typedef skiagm::GM INHERITED; }; DEF_GM( return new ScaleGeneratorGM; ) - -#if SK_SUPPORT_GPU -#include "GrContextFactory.h" -#endif - -DEF_SIMPLE_GM(new_texture_image, canvas, 225, 60) { - GrContext* context = nullptr; -#if SK_SUPPORT_GPU - context = canvas->getGrContext(); - sk_gpu_test::GrContextFactory factory; -#endif - if (!context) { - skiagm::GM::DrawGpuOnlyMessage(canvas); - return; - } - - auto render_image = [](SkCanvas* canvas) { - canvas->clear(SK_ColorBLUE); - SkPaint paint; - paint.setColor(SK_ColorRED); - canvas->drawRect(SkRect::MakeXYWH(10.f,10.f,10.f,10.f), paint); - paint.setColor(SK_ColorGREEN); - canvas->drawRect(SkRect::MakeXYWH(30.f,10.f,10.f,10.f), paint); - paint.setColor(SK_ColorYELLOW); - canvas->drawRect(SkRect::MakeXYWH(10.f,30.f,10.f,10.f), paint); - paint.setColor(SK_ColorCYAN); - canvas->drawRect(SkRect::MakeXYWH(30.f,30.f,10.f,10.f), paint); - }; - - static constexpr int kSize = 50; - SkBitmap bmp; - bmp.allocN32Pixels(kSize, kSize); - SkCanvas bmpCanvas(bmp); - render_image(&bmpCanvas); - - std::function<sk_sp<SkImage>()> imageFactories[] = { - // Create sw raster image. - [bmp] { - return SkImage::MakeFromBitmap(bmp); - }, - // Create encoded image. - [bmp] { - sk_sp<SkData> src( - sk_tool_utils::EncodeImageToData(bmp, SkEncodedImageFormat::kPNG, 100)); - return SkImage::MakeFromEncoded(std::move(src)); - }, - // Create a picture image. - [render_image] { - SkPictureRecorder recorder; - SkCanvas* canvas = recorder.beginRecording(SkIntToScalar(kSize), SkIntToScalar(kSize)); - render_image(canvas); - return SkImage::MakeFromPicture(recorder.finishRecordingAsPicture(), - SkISize::Make(kSize, kSize), nullptr, nullptr); - }, - // Create a texture image - [context, render_image]() -> sk_sp<SkImage> { - auto surface( - SkSurface::MakeRenderTarget(context, SkBudgeted::kYes, - SkImageInfo::MakeN32Premul(kSize, kSize))); - if (!surface) { - return nullptr; - } - render_image(surface->getCanvas()); - return surface->makeImageSnapshot(); - } - }; - - constexpr SkScalar kPad = 5.f; - canvas->translate(kPad, kPad); - for (auto factory : imageFactories) { - auto image(factory()); - if (!image) { - continue; - } - if (context) { - sk_sp<SkImage> texImage(image->makeTextureImage(context)); - if (texImage) { - canvas->drawImage(texImage, 0, 0); - } - } - canvas->translate(image->width() + kPad, 0); - } -} |