diff options
author | msarett <msarett@google.com> | 2016-02-11 13:29:36 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-02-11 13:29:36 -0800 |
commit | 9b9497ef14f23562a95afe989d1efe41c603a6f6 (patch) | |
tree | 73bcf52cd5174899c13c816d02092faccdc8453d /src/codec/SkBmpCodec.h | |
parent | f8289d9bd1faff400728cb8e1ac0b1aa68bfbc32 (diff) |
Implement onSkipScanlines() for bmp and wbmp
TBR=reed@google.com
BUG=skia:4270
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691083002
Review URL: https://codereview.chromium.org/1691083002
Diffstat (limited to 'src/codec/SkBmpCodec.h')
-rw-r--r-- | src/codec/SkBmpCodec.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/codec/SkBmpCodec.h b/src/codec/SkBmpCodec.h index 5d77ca3fc8..a54734f431 100644 --- a/src/codec/SkBmpCodec.h +++ b/src/codec/SkBmpCodec.h @@ -81,6 +81,7 @@ protected: */ uint16_t bitsPerPixel() const { return fBitsPerPixel; } SkScanlineOrder onGetScanlineOrder() const override { return fRowOrder; } + size_t srcRowBytes() const { return fSrcRowBytes; } /* * To be overriden by bmp subclasses, which provide unique implementations. @@ -127,15 +128,18 @@ private: virtual int decodeRows(const SkImageInfo& dstInfo, void* dst, size_t dstRowBytes, const Options& opts) = 0; + virtual bool skipRows(int count); + Result onStartScanlineDecode(const SkImageInfo& dstInfo, const SkCodec::Options&, SkPMColor inputColorPtr[], int* inputColorCount) override; int onGetScanlines(void* dst, int count, size_t rowBytes) override; - // TODO(msarett): Override default skipping with something more clever. + bool onSkipScanlines(int count) override; const uint16_t fBitsPerPixel; const SkScanlineOrder fRowOrder; + const size_t fSrcRowBytes; typedef SkCodec INHERITED; }; |