diff options
author | yujieqin <yujieqin@google.com> | 2016-01-25 08:26:16 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-25 08:26:16 -0800 |
commit | 916de9ff18cf3caa29c0821b55244060b6f84f9d (patch) | |
tree | 2eeca150de2fe391a8498339138e135154f7bcc1 /src/codec/SkRawAdapterCodec.h | |
parent | d03b7ae1e273e871d951c94fd9626d62acee9379 (diff) |
Add RAW decoding into Skia.
TBR=reed@google.com
BUG=skia:
(Based on the work from ebrauer in https://codereview.chromium.org/1459473007)
(Based on the work from adaubert in https://codereview.chromium.org/1494003003)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1520403003
Committed: https://skia.googlesource.com/skia/+/6bd8639f8c142eedf543f4e5f3b02d2bf11df308
Review URL: https://codereview.chromium.org/1520403003
Diffstat (limited to 'src/codec/SkRawAdapterCodec.h')
-rw-r--r-- | src/codec/SkRawAdapterCodec.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/codec/SkRawAdapterCodec.h b/src/codec/SkRawAdapterCodec.h new file mode 100644 index 0000000000..b552f2aaea --- /dev/null +++ b/src/codec/SkRawAdapterCodec.h @@ -0,0 +1,42 @@ +/* + * Copyright 2016 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef SkRawAdapterCodec_DEFINED +#define SkRawAdapterCodec_DEFINED + +#include "SkAndroidCodec.h" +#include "SkCodec.h" +#include "SkEncodedFormat.h" +#include "SkRawCodec.h" +#include "SkStream.h" +#include "SkTypes.h" + +/** + * This class implements the functionality of SkAndroidCodec. It uses an + * SkRawCodec. + */ +class SkRawAdapterCodec : public SkAndroidCodec { +public: + + explicit SkRawAdapterCodec(SkRawCodec*); + + virtual ~SkRawAdapterCodec() {} + +protected: + + SkISize onGetSampledDimensions(int sampleSize) const override; + + bool onGetSupportedSubset(SkIRect* /*desiredSubset*/) const override { return false; } + + SkCodec::Result onGetAndroidPixels(const SkImageInfo& info, void* pixels, size_t rowBytes, + const AndroidOptions& options) override; + +private: + + typedef SkAndroidCodec INHERITED; +}; +#endif // SkRawAdapterCodec_DEFINED |