From a40be09c443d15fcb080adde0ab9625e8a5af73d Mon Sep 17 00:00:00 2001 From: reed Date: Thu, 14 Jan 2016 09:11:51 -0800 Subject: expand gm to exercise miplevels and various scalers BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1574233003 TBR= Review URL: https://codereview.chromium.org/1574233003 --- gm/downsamplebitmap.cpp | 57 ------------------------------------------------- 1 file changed, 57 deletions(-) (limited to 'gm/downsamplebitmap.cpp') diff --git a/gm/downsamplebitmap.cpp b/gm/downsamplebitmap.cpp index d7a8b35927..771eb6ab53 100644 --- a/gm/downsamplebitmap.cpp +++ b/gm/downsamplebitmap.cpp @@ -191,63 +191,6 @@ class DownsampleBitmapImageGM: public DownsampleBitmapGM { typedef DownsampleBitmapGM INHERITED; }; -#include "SkMipMap.h" - -static void release_mipmap(void*, void* context) { - ((SkMipMap*)context)->unref(); -} - -class ShowMipLevels : public skiagm::GM { -public: - SkBitmap fBM; - - ShowMipLevels() { - this->setBGColor(sk_tool_utils::color_to_565(0xFFDDDDDD)); - make_checker(&fBM, 512, 256); - } - -protected: - - SkString onShortName() override { - return SkString("showmiplevels"); - } - - SkISize onISize() override { - return SkISize::Make(fBM.width() + 8, 2 * fBM.height() + 80); - } - - void onDraw(SkCanvas* canvas) override { - SkScalar x = 4; - SkScalar y = 4; - canvas->drawBitmap(fBM, x, y, nullptr); - y += fBM.height() + 4; - - SkAutoTUnref mm(SkMipMap::Build(fBM, nullptr)); - - SkMipMap::Level level; - SkScalar scale = 0.5f; - while (mm->extractLevel(scale, &level)) { - SkImageInfo info = SkImageInfo::MakeN32Premul(level.fWidth, level.fHeight); - SkBitmap bm; - bm.installPixels(info, level.fPixels, level.fRowBytes, nullptr, - &release_mipmap, (void*)(SkRef(mm.get()))); - bm.setImmutable(); - canvas->drawBitmap(bm, x, y, nullptr); - y += bm.height() + 4; - scale /= 2; - if (info.width() == 1 || info.height() == 1) { - break; - } - } - } - -private: - typedef skiagm::GM INHERITED; -}; -DEF_GM( return new ShowMipLevels; ) - -////////////////////////////////////////////////////////////////////////////// - DEF_GM( return new DownsampleBitmapTextGM(72, kHigh_SkFilterQuality); ) DEF_GM( return new DownsampleBitmapCheckerboardGM(512,256, kHigh_SkFilterQuality); ) DEF_GM( return new DownsampleBitmapImageGM("mandrill_512.png", kHigh_SkFilterQuality); ) -- cgit v1.2.3