SkImageEncoder: simplify API
(re-land 248ff02 & 2cb6cb7, with changes)
- Hide SkImageEncoder class in private header.
- SkImageEncoder::Type becomes SkEncodedImageFormat
- SkEncodedFormat becomes SkEncodedImageFormat
- SkImageEncoder static functions replaced with
single function EncodeImage()
- utility wrappers for EncodeImage() are in
sk_tool_utils.h
TODO: remove link-time registration mechanism.
TODO: clean up clients use of API and flip the flag.
TODO: implement EncodeImage() in chromeium/skia/ext
Change-Id: I47d451e50be4d5c6c130869c7fa7c2857243d9f0
Reviewed-on: https://skia-review.googlesource.com/4909
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-on: https://skia-review.googlesource.com/5186
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
diff --git a/src/android/SkBitmapRegionCodec.h b/src/android/SkBitmapRegionCodec.h
index 5c59d52..2c9536c 100644
--- a/src/android/SkBitmapRegionCodec.h
+++ b/src/android/SkBitmapRegionCodec.h
@@ -26,7 +26,9 @@
bool conversionSupported(SkColorType colorType) override;
- SkEncodedFormat getEncodedFormat() override { return fCodec->getEncodedFormat(); }
+ SkEncodedFormat getEncodedFormat() override {
+ return (SkEncodedFormat)fCodec->getEncodedFormat();
+ }
private:
diff --git a/src/android/SkBitmapRegionDecoder.cpp b/src/android/SkBitmapRegionDecoder.cpp
index 15a530e..8298fb5 100644
--- a/src/android/SkBitmapRegionDecoder.cpp
+++ b/src/android/SkBitmapRegionDecoder.cpp
@@ -29,11 +29,10 @@
return NULL;
}
- SkEncodedFormat format = codec->getEncodedFormat();
- switch (format) {
- case SkEncodedFormat::kJPEG_SkEncodedFormat:
- case SkEncodedFormat::kPNG_SkEncodedFormat:
- case SkEncodedFormat::kWEBP_SkEncodedFormat:
+ switch ((SkEncodedImageFormat)codec->getEncodedFormat()) {
+ case SkEncodedImageFormat::kJPEG:
+ case SkEncodedImageFormat::kPNG:
+ case SkEncodedImageFormat::kWEBP:
break;
default:
return nullptr;