| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 /* | 
|  | 2  * Copyright 2013 Google Inc. | 
|  | 3  * | 
|  | 4  * Use of this source code is governed by a BSD-style license that can be | 
|  | 5  * found in the LICENSE file. | 
|  | 6  */ | 
|  | 7 | 
|  | 8 #include "LazyDecodeBitmap.h" | 
|  | 9 | 
|  | 10 #include "SkData.h" | 
|  | 11 #include "SkDiscardableMemoryPool.h" | 
|  | 12 #include "SkImageGeneratorPriv.h" | 
|  | 13 #include "SkForceLinking.h" | 
|  | 14 | 
|  | 15 #include "SkCommandLineFlags.h" | 
|  | 16 | 
|  | 17 __SK_FORCE_IMAGE_DECODER_LINKING; | 
|  | 18 | 
|  | 19 DEFINE_bool(useVolatileCache, false, "Use a volatile cache for deferred image de
    coding pixels. " | 
|  | 20             "Only meaningful if --deferImageDecoding is set to true and the plat
    form has an " | 
|  | 21             "implementation."); | 
|  | 22 | 
|  | 23 //  Fits SkPicture::InstallPixelRefProc call signature. | 
|  | 24 //  Used in SkPictureData::CreateFromStream | 
|  | 25 bool sk_tools::LazyDecodeBitmap(const void* src, size_t length, SkBitmap* dst) { | 
|  | 26     SkAutoDataUnref data(SkData::NewWithCopy(src, length)); | 
|  | 27     if (nullptr == data.get()) { | 
|  | 28         return false; | 
|  | 29     } | 
|  | 30 | 
|  | 31     SkAutoTDelete<SkImageGenerator> gen(SkImageGenerator::NewFromEncoded(data)); | 
|  | 32     if (nullptr == gen.get()) { | 
|  | 33         return false; | 
|  | 34     } | 
|  | 35     const SkImageInfo info = gen->getInfo(); | 
|  | 36     SkDiscardableMemory::Factory* pool = nullptr; | 
|  | 37     if ((!FLAGS_useVolatileCache) || (info.width() * info.height() < 32 * 1024))
     { | 
|  | 38         // how to do switching with SkDiscardableMemory. | 
|  | 39         pool = SkGetGlobalDiscardableMemoryPool(); | 
|  | 40         // Only meaningful if platform has a default discardable | 
|  | 41         // memory implementation that differs from the global DM pool. | 
|  | 42     } | 
|  | 43     return SkDEPRECATED_InstallDiscardablePixelRef(gen.detach(), nullptr, dst, p
    ool); | 
|  | 44 } | 
| OLD | NEW | 
|---|