Index: src/codec/SkIcoCodec.h |
diff --git a/src/codec/SkIcoCodec.h b/src/codec/SkIcoCodec.h |
index 8c56aee4c6ca135da33d0aa7824db1fab863bd84..a227d8c67100691dc00ec78ac0121e33c1d017d1 100644 |
--- a/src/codec/SkIcoCodec.h |
+++ b/src/codec/SkIcoCodec.h |
@@ -54,6 +54,11 @@ private: |
bool onSkipScanlines(int count) override; |
+ Result onStartIncrementalDecode(const SkImageInfo& dstInfo, void* pixels, size_t rowBytes, |
+ const SkCodec::Options&, SkPMColor*, int*) override; |
+ |
+ Result onIncrementalDecode(int* rowsDecoded) override; |
+ |
SkSampler* getSampler(bool createIfNecessary) override; |
/* |
@@ -84,5 +89,13 @@ private: |
// SkAutoTDelete. It will be deleted by the destructor of fEmbeddedCodecs. |
SkCodec* fCurrScanlineCodec; |
+ // Only used by incremental decoder. onStartIncrementalDecode() will set |
+ // fCurrIncrementalCodec to one of the fEmbeddedCodecs, if it can find a |
+ // codec of the appropriate size. We will use fCurrIncrementalCodec for |
+ // subsequent calls to incrementalDecode(). |
+ // fCurrIncrementalCodec is owned by this class, but should not be an |
+ // SkAutoTDelete. It will be deleted by the destructor of fEmbeddedCodecs. |
+ SkCodec* fCurrIncrementalCodec; |
+ |
typedef SkCodec INHERITED; |
}; |