| Index: bench/subset/SubsetZoomBench.cpp
 | 
| diff --git a/bench/subset/SubsetZoomBench.cpp b/bench/subset/SubsetZoomBench.cpp
 | 
| deleted file mode 100644
 | 
| index 1712595d7ac69fabee985e8939bf4d535aa690bb..0000000000000000000000000000000000000000
 | 
| --- a/bench/subset/SubsetZoomBench.cpp
 | 
| +++ /dev/null
 | 
| @@ -1,101 +0,0 @@
 | 
| -/*
 | 
| - * Copyright 2015 Google Inc.
 | 
| - *
 | 
| - * Use of this source code is governed by a BSD-style license that can be
 | 
| - * found in the LICENSE file.
 | 
| - */
 | 
| -
 | 
| -#include "CodecBenchPriv.h"
 | 
| -#include "SubsetZoomBench.h"
 | 
| -#include "SubsetBenchPriv.h"
 | 
| -#include "SkData.h"
 | 
| -#include "SkCodec.h"
 | 
| -#include "SkImageDecoder.h"
 | 
| -#include "SkOSFile.h"
 | 
| -#include "SkStream.h"
 | 
| -
 | 
| -/*
 | 
| - *
 | 
| - * This benchmark is designed to test the performance of subset decoding.
 | 
| - * Choose subsets to mimic a user zooming in or out on a photo.
 | 
| - *
 | 
| - */
 | 
| -
 | 
| -SubsetZoomBench::SubsetZoomBench(const SkString& path,
 | 
| -                                 SkColorType colorType,
 | 
| -                                 uint32_t subsetWidth,
 | 
| -                                 uint32_t subsetHeight)
 | 
| -    : fColorType(colorType)
 | 
| -    , fSubsetWidth(subsetWidth)
 | 
| -    , fSubsetHeight(subsetHeight)
 | 
| -{
 | 
| -    // Parse the filename
 | 
| -    SkString baseName = SkOSPath::Basename(path.c_str());
 | 
| -
 | 
| -    // Choose an informative color name
 | 
| -    const char* colorName = color_type_to_str(fColorType);
 | 
| -
 | 
| -    fName.printf("CodecSubsetZoom_%dx%d_%s_%s", fSubsetWidth,
 | 
| -            fSubsetHeight, baseName.c_str(), colorName);
 | 
| -    
 | 
| -    // Perform the decode setup
 | 
| -    SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(path.c_str()));
 | 
| -    fStream.reset(new SkMemoryStream(encoded));
 | 
| -}
 | 
| -
 | 
| -const char* SubsetZoomBench::onGetName() {
 | 
| -    return fName.c_str();
 | 
| -}
 | 
| -
 | 
| -bool SubsetZoomBench::isSuitableFor(Backend backend) {
 | 
| -    return kNonRendering_Backend == backend;
 | 
| -}
 | 
| -
 | 
| -void SubsetZoomBench::onDraw(int n, SkCanvas* canvas) {
 | 
| -    // When the color type is kIndex8, we will need to store the color table.  If it is
 | 
| -    // used, it will be initialized by the codec.
 | 
| -    int colorCount;
 | 
| -    SkPMColor colors[256];
 | 
| -    for (int count = 0; count < n; count++) {
 | 
| -        SkAutoTDelete<SkCodec> codec(SkCodec::NewFromStream(fStream->duplicate()));
 | 
| -        SkASSERT(SkCodec::kOutOfOrder_SkScanlineOrder != codec->getScanlineOrder());
 | 
| -        const SkImageInfo info = codec->getInfo().makeColorType(fColorType);
 | 
| -
 | 
| -        const int centerX = info.width() / 2;
 | 
| -        const int centerY = info.height() / 2;
 | 
| -        int w = fSubsetWidth;
 | 
| -        int h = fSubsetHeight;
 | 
| -        do {
 | 
| -            const int subsetStartX = SkTMax(0, centerX - w / 2);
 | 
| -            const int subsetStartY = SkTMax(0, centerY - h / 2);
 | 
| -            const int subsetWidth = SkTMin(w, info.width() - subsetStartX);
 | 
| -            const int subsetHeight = SkTMin(h, info.height() - subsetStartY);
 | 
| -
 | 
| -            // The scanline decoder will handle subsetting in the x-dimension.
 | 
| -            SkIRect subset = SkIRect::MakeXYWH(subsetStartX, 0, subsetWidth,
 | 
| -                    codec->getInfo().height());
 | 
| -            SkCodec::Options options;
 | 
| -            options.fSubset = ⊂
 | 
| -
 | 
| -            SkDEBUGCODE(SkCodec::Result result = )
 | 
| -            codec->startScanlineDecode(info, &options, colors, &colorCount);
 | 
| -            SkASSERT(SkCodec::kSuccess == result);
 | 
| -
 | 
| -            // Note that if we subsetted and scaled in a single step, we could use the
 | 
| -            // same bitmap - as is often done in actual use cases.
 | 
| -            SkBitmap bitmap;
 | 
| -            SkImageInfo subsetInfo = info.makeWH(subsetWidth, subsetHeight);
 | 
| -            alloc_pixels(&bitmap, subsetInfo, colors, colorCount);
 | 
| -
 | 
| -            SkDEBUGCODE(bool success = ) codec->skipScanlines(subsetStartY);
 | 
| -            SkASSERT(success);
 | 
| -
 | 
| -            SkDEBUGCODE(int lines = ) codec->getScanlines(bitmap.getPixels(),
 | 
| -                    subsetHeight, bitmap.rowBytes());
 | 
| -            SkASSERT(subsetHeight == lines);
 | 
| -
 | 
| -            w <<= 1;
 | 
| -            h <<= 1;
 | 
| -        } while (w < 2 * info.width() || h < 2 * info.height());
 | 
| -    }
 | 
| -}
 | 
| 
 |