OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2015 The Android Open Source Project | 2 * Copyright 2015 The Android Open Source Project |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef SubsetBenchPriv_DEFINED | 8 #ifndef SubsetBenchPriv_DEFINED |
9 #define SubsetBenchPriv_DEFINED | 9 #define SubsetBenchPriv_DEFINED |
10 | 10 |
11 #include "SkCodec.h" | 11 #include "SkCodec.h" |
12 #include "SkData.h" | 12 #include "SkData.h" |
13 #include "SkImageGenerator.h" | 13 #include "SkImageGenerator.h" |
14 | 14 |
15 /* | 15 /* |
16 * Convert the color type to a string | |
17 */ | |
18 static const char* get_color_name(SkColorType colorType) { | |
19 switch(colorType) { | |
20 case kN32_SkColorType: | |
21 return "N32"; | |
22 case kRGB_565_SkColorType: | |
23 return "565"; | |
24 case kGray_8_SkColorType: | |
25 return "Gray8"; | |
26 case kIndex_8_SkColorType: | |
27 return "Index8"; | |
28 case kAlpha_8_SkColorType: | |
29 return "Alpha8"; | |
30 default: | |
31 return "Unknown"; | |
32 } | |
33 } | |
34 | |
35 /* | |
36 * If we plan to decode to kIndex8, we must create a color table and pass it to
the | 16 * If we plan to decode to kIndex8, we must create a color table and pass it to
the |
37 * bitmap when we allocate pixels. Otherwise, we simply allocate pixels using t
he | 17 * bitmap when we allocate pixels. Otherwise, we simply allocate pixels using t
he |
38 * decode info. | 18 * decode info. |
39 */ | 19 */ |
40 static inline void alloc_pixels(SkBitmap* bitmap, const SkImageInfo& info, SkPMC
olor* colors, | 20 static inline void alloc_pixels(SkBitmap* bitmap, const SkImageInfo& info, SkPMC
olor* colors, |
41 int colorCount) { | 21 int colorCount) { |
42 if (kIndex_8_SkColorType == info.colorType()) { | 22 if (kIndex_8_SkColorType == info.colorType()) { |
43 SkAutoTUnref<SkColorTable> colorTable(new SkColorTable(colors, colorCoun
t)); | 23 SkAutoTUnref<SkColorTable> colorTable(new SkColorTable(colors, colorCoun
t)); |
44 bitmap->allocPixels(info, nullptr, colorTable); | 24 bitmap->allocPixels(info, nullptr, colorTable); |
45 } else { | 25 } else { |
46 bitmap->allocPixels(info); | 26 bitmap->allocPixels(info); |
47 } | 27 } |
48 } | 28 } |
49 | 29 |
50 #endif // SubsetBenchPriv_DEFINED | 30 #endif // SubsetBenchPriv_DEFINED |
OLD | NEW |