aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/images/SkImageDecoder_libwebp.cpp
diff options
context:
space:
mode:
authorGravatar reed <reed@chromium.org>2014-06-14 05:30:20 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-06-14 05:30:20 -0700
commit0689d7b12e7c427a077b003d3d8ae759d86f798f (patch)
treeac2125dd7a653ea67b693ddd7937b41b41db73fb /src/images/SkImageDecoder_libwebp.cpp
parentc6dbd6f95ed3e2647a5ee0c44b2c317d0b8b913a (diff)
stop using SkBitmap::Config
R=scroggo@google.com Author: reed@chromium.org Review URL: https://codereview.chromium.org/338493005
Diffstat (limited to 'src/images/SkImageDecoder_libwebp.cpp')
-rw-r--r--src/images/SkImageDecoder_libwebp.cpp32
1 files changed, 13 insertions, 19 deletions
diff --git a/src/images/SkImageDecoder_libwebp.cpp b/src/images/SkImageDecoder_libwebp.cpp
index 7a3c65875c..f7cfa8b4cc 100644
--- a/src/images/SkImageDecoder_libwebp.cpp
+++ b/src/images/SkImageDecoder_libwebp.cpp
@@ -169,9 +169,9 @@ static bool return_false(const SkBitmap& bm, const char msg[]) {
static WEBP_CSP_MODE webp_decode_mode(const SkBitmap* decodedBitmap, bool premultiply) {
WEBP_CSP_MODE mode = MODE_LAST;
- SkBitmap::Config config = decodedBitmap->config();
+ const SkColorType ct = decodedBitmap->colorType();
- if (config == SkBitmap::kARGB_8888_Config) {
+ if (ct == kN32_SkColorType) {
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
mode = premultiply ? MODE_bgrA : MODE_BGRA;
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
@@ -179,9 +179,9 @@ static WEBP_CSP_MODE webp_decode_mode(const SkBitmap* decodedBitmap, bool premul
#else
#error "Skia uses BGRA or RGBA byte order"
#endif
- } else if (config == SkBitmap::kARGB_4444_Config) {
+ } else if (ct == kARGB_4444_SkColorType) {
mode = premultiply ? MODE_rgbA_4444 : MODE_RGBA_4444;
- } else if (config == SkBitmap::kRGB_565_Config) {
+ } else if (ct == kRGB_565_SkColorType) {
mode = MODE_RGB_565;
}
SkASSERT(MODE_LAST != mode);
@@ -333,10 +333,8 @@ bool SkWEBPImageDecoder::onBuildTileIndex(SkStreamRewindable* stream,
}
static bool is_config_compatible(const SkBitmap& bitmap) {
- SkBitmap::Config config = bitmap.config();
- return config == SkBitmap::kARGB_4444_Config ||
- config == SkBitmap::kRGB_565_Config ||
- config == SkBitmap::kARGB_8888_Config;
+ const SkColorType ct = bitmap.colorType();
+ return ct == kARGB_4444_SkColorType || ct == kRGB_565_SkColorType || ct == kN32_SkColorType;
}
bool SkWEBPImageDecoder::onDecodeSubset(SkBitmap* decodedBitmap,
@@ -556,11 +554,9 @@ static void Index8_To_RGB(const uint8_t* in, uint8_t* rgb, int width,
}
}
-static ScanlineImporter ChooseImporter(const SkBitmap::Config& config,
- bool hasAlpha,
- int* bpp) {
- switch (config) {
- case SkBitmap::kARGB_8888_Config:
+static ScanlineImporter ChooseImporter(SkColorType ct, bool hasAlpha, int* bpp) {
+ switch (ct) {
+ case kN32_SkColorType:
if (hasAlpha) {
*bpp = 4;
return ARGB_8888_To_RGBA;
@@ -568,7 +564,7 @@ static ScanlineImporter ChooseImporter(const SkBitmap::Config& config,
*bpp = 3;
return ARGB_8888_To_RGB;
}
- case SkBitmap::kARGB_4444_Config:
+ case kARGB_4444_SkColorType:
if (hasAlpha) {
*bpp = 4;
return ARGB_4444_To_RGBA;
@@ -576,10 +572,10 @@ static ScanlineImporter ChooseImporter(const SkBitmap::Config& config,
*bpp = 3;
return ARGB_4444_To_RGB;
}
- case SkBitmap::kRGB_565_Config:
+ case kRGB_565_SkColorType:
*bpp = 3;
return RGB_565_To_RGB;
- case SkBitmap::kIndex8_Config:
+ case kIndex_8_SkColorType:
*bpp = 3;
return Index8_To_RGB;
default:
@@ -603,11 +599,9 @@ private:
bool SkWEBPImageEncoder::onEncode(SkWStream* stream, const SkBitmap& bm,
int quality) {
- const SkBitmap::Config config = bm.config();
const bool hasAlpha = !bm.isOpaque();
int bpp = -1;
- const ScanlineImporter scanline_import = ChooseImporter(config, hasAlpha,
- &bpp);
+ const ScanlineImporter scanline_import = ChooseImporter(bm.colorType(), hasAlpha, &bpp);
if (NULL == scanline_import) {
return false;
}