diff options
Diffstat (limited to 'src/codec/SkPngCodec.h')
-rw-r--r-- | src/codec/SkPngCodec.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/codec/SkPngCodec.h b/src/codec/SkPngCodec.h index 25a5f07877..b329fef1b6 100644 --- a/src/codec/SkPngCodec.h +++ b/src/codec/SkPngCodec.h @@ -47,7 +47,7 @@ protected: SkPngCodec(const SkEncodedInfo&, const SkImageInfo&, SkStream*, SkPngChunkReader*, void* png_ptr, void* info_ptr, int bitDepth); - Result onGetPixels(const SkImageInfo&, void*, size_t, const Options&, int*) + Result onGetPixels(const SkImageInfo&, void*, size_t, const Options&, SkPMColor*, int*, int*) override; SkEncodedImageFormat onGetEncodedFormat() const override { return SkEncodedImageFormat::kPNG; } bool onRewind() override; @@ -73,7 +73,8 @@ protected: void processData(); Result onStartIncrementalDecode(const SkImageInfo& dstInfo, void* pixels, size_t rowBytes, - const SkCodec::Options&) override; + const SkCodec::Options&, + SkPMColor* ctable, int* ctableCount) override; Result onIncrementalDecode(int*) override; sk_sp<SkPngChunkReader> fPngChunkReader; @@ -100,9 +101,10 @@ private: kSwizzleColor_XformMode, }; - bool createColorTable(const SkImageInfo& dstInfo); + bool createColorTable(const SkImageInfo& dstInfo, int* ctableCount); // Helper to set up swizzler, color xforms, and color table. Also calls png_read_update_info. - SkCodec::Result initializeXforms(const SkImageInfo& dstInfo, const Options&); + SkCodec::Result initializeXforms(const SkImageInfo& dstInfo, const Options&, + SkPMColor* colorPtr, int* colorCount); void initializeSwizzler(const SkImageInfo& dstInfo, const Options&, bool skipFormatConversion); void allocateStorage(const SkImageInfo& dstInfo); void destroyReadStruct(); |