Index: include/codec/SkEncodedInfo.h |
diff --git a/include/codec/SkEncodedInfo.h b/include/codec/SkEncodedInfo.h |
deleted file mode 100644 |
index f91660529e05a26194fdf8b5084f211133298ab5..0000000000000000000000000000000000000000 |
--- a/include/codec/SkEncodedInfo.h |
+++ /dev/null |
@@ -1,178 +0,0 @@ |
-/* |
- * 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 SkEncodedInfo_DEFINED |
-#define SkEncodedInfo_DEFINED |
- |
-#include "SkImageInfo.h" |
- |
-struct SkEncodedInfo { |
-public: |
- |
- enum Alpha { |
- kOpaque_Alpha, |
- kUnpremul_Alpha, |
- |
- // Each pixel is either fully opaque or fully transparent. |
- // There is no difference between requesting kPremul or kUnpremul. |
- kBinary_Alpha, |
- |
- // Allows us to have a default constructor. Should be treated as |
- // invalid. |
- kUnknown_Alpha, |
- }; |
- |
- /* |
- * We strive to make the number of components per pixel obvious through |
- * our naming conventions. |
- * Ex: kRGB has 3 components. kRGBA has 4 components. |
- * |
- * This sometimes results in redundant Alpha and Color information. |
- * Ex: kRGB images must also be kOpaque. |
- */ |
- enum Color { |
- // PNG, WBMP |
- kGray_Color, |
- |
- // PNG |
- kGrayAlpha_Color, |
- |
- // PNG, GIF, BMP |
- kPalette_Color, |
- |
- // PNG, RAW |
- kRGB_Color, |
- kRGBA_Color, |
- |
- // BMP |
- kBGR_Color, |
- kBGRX_Color, |
- kBGRA_Color, |
- |
- // JPEG, WEBP |
- kYUV_Color, |
- |
- // WEBP |
- kYUVA_Color, |
- |
- // JPEG |
- // Photoshop actually writes inverted CMYK data into JPEGs, where zero |
- // represents 100% ink coverage. For this reason, we treat CMYK JPEGs |
- // as having inverted CMYK. libjpeg-turbo warns that this may break |
- // other applications, but the CMYK JPEGs we see on the web expect to |
- // be treated as inverted CMYK. |
- kInvertedCMYK_Color, |
- kYCCK_Color, |
- |
- // Allows us to have a default constructor. Should be treated as |
- // invalid. |
- kUnknown_Color, |
- }; |
- |
- static SkEncodedInfo Make(Color color, Alpha alpha, int bitsPerComponent) { |
- SkASSERT(1 == bitsPerComponent || |
- 2 == bitsPerComponent || |
- 4 == bitsPerComponent || |
- 8 == bitsPerComponent || |
- 16 == bitsPerComponent); |
- |
- switch (color) { |
- case kGray_Color: |
- SkASSERT(kOpaque_Alpha == alpha); |
- break; |
- case kGrayAlpha_Color: |
- SkASSERT(kOpaque_Alpha != alpha); |
- break; |
- case kPalette_Color: |
- SkASSERT(16 != bitsPerComponent); |
- break; |
- case kRGB_Color: |
- case kBGR_Color: |
- case kBGRX_Color: |
- SkASSERT(kOpaque_Alpha == alpha); |
- SkASSERT(bitsPerComponent >= 8); |
- break; |
- case kYUV_Color: |
- case kInvertedCMYK_Color: |
- case kYCCK_Color: |
- SkASSERT(kOpaque_Alpha == alpha); |
- SkASSERT(8 == bitsPerComponent); |
- break; |
- case kRGBA_Color: |
- SkASSERT(kOpaque_Alpha != alpha); |
- SkASSERT(bitsPerComponent >= 8); |
- break; |
- case kBGRA_Color: |
- case kYUVA_Color: |
- SkASSERT(kOpaque_Alpha != alpha); |
- SkASSERT(8 == bitsPerComponent); |
- break; |
- default: |
- SkASSERT(false); |
- break; |
- } |
- |
- return SkEncodedInfo(color, alpha, bitsPerComponent); |
- } |
- |
- /* |
- * Returns an SkImageInfo with Skia color and alpha types that are the |
- * closest possible match to the encoded info. |
- */ |
- SkImageInfo makeImageInfo(int width, int height) const { |
- switch (fColor) { |
- case kGray_Color: |
- SkASSERT(kOpaque_Alpha == fAlpha); |
- return SkImageInfo::Make(width, height, kGray_8_SkColorType, kOpaque_SkAlphaType); |
- case kGrayAlpha_Color: |
- SkASSERT(kOpaque_Alpha != fAlpha); |
- return SkImageInfo::Make(width, height, kN32_SkColorType, |
- kUnpremul_SkAlphaType); |
- case kPalette_Color: { |
- SkAlphaType alphaType = (kOpaque_Alpha == fAlpha) ? kOpaque_SkAlphaType : |
- kUnpremul_SkAlphaType; |
- return SkImageInfo::Make(width, height, kIndex_8_SkColorType, alphaType); |
- } |
- case kRGB_Color: |
- case kBGR_Color: |
- case kBGRX_Color: |
- case kYUV_Color: |
- case kInvertedCMYK_Color: |
- case kYCCK_Color: |
- SkASSERT(kOpaque_Alpha == fAlpha); |
- return SkImageInfo::Make(width, height, kN32_SkColorType, kOpaque_SkAlphaType); |
- case kRGBA_Color: |
- case kBGRA_Color: |
- case kYUVA_Color: |
- SkASSERT(kOpaque_Alpha != fAlpha); |
- return SkImageInfo::Make(width, height, kN32_SkColorType, kUnpremul_SkAlphaType); |
- default: |
- SkASSERT(false); |
- return SkImageInfo::MakeUnknown(); |
- } |
- } |
- |
- SkEncodedInfo() |
- : fColor(kUnknown_Color) |
- , fAlpha(kUnknown_Alpha) |
- , fBitsPerComponent(0) |
- {} |
- |
-private: |
- |
- SkEncodedInfo(Color color, Alpha alpha, uint8_t bitsPerComponent) |
- : fColor(color) |
- , fAlpha(alpha) |
- , fBitsPerComponent(bitsPerComponent) |
- {} |
- |
- Color fColor; |
- Alpha fAlpha; |
- uint8_t fBitsPerComponent; |
-}; |
- |
-#endif |