| Index: include/core/SkImageInfo.h
|
| diff --git a/include/core/SkImageInfo.h b/include/core/SkImageInfo.h
|
| index c22249b842aaf3f602c5e3b99e57ce1bdaff7b42..366d00af705f2db439d0f46ba80b8f74a999fe32 100644
|
| --- a/include/core/SkImageInfo.h
|
| +++ b/include/core/SkImageInfo.h
|
| @@ -10,6 +10,9 @@
|
|
|
| #include "SkTypes.h"
|
|
|
| +class SkFlattenableWriteBuffer;
|
| +class SkFlattenableReadBuffer;
|
| +
|
| /**
|
| * Describes how to interpret the alpha compoent of a pixel.
|
| */
|
| @@ -63,6 +66,7 @@ static inline bool SkAlphaTypeIsOpaque(SkAlphaType at) {
|
| enum SkColorType {
|
| kAlpha_8_SkColorType,
|
| kRGB_565_SkColorType,
|
| + kARGB_4444_SkColorType,
|
| kRGBA_8888_SkColorType,
|
| kBGRA_8888_SkColorType,
|
| kIndex8_SkColorType,
|
| @@ -82,6 +86,7 @@ static int SkColorTypeBytesPerPixel(SkColorType ct) {
|
| static const uint8_t gSize[] = {
|
| 1, // Alpha_8
|
| 2, // RGB_565
|
| + 2, // ARGB_4444
|
| 4, // RGBA_8888
|
| 4, // BGRA_8888
|
| 1, // kIndex_8
|
| @@ -112,12 +117,26 @@ struct SkImageInfo {
|
| return SkColorTypeBytesPerPixel(fColorType);
|
| }
|
|
|
| + size_t minRowBytes() const {
|
| + return fWidth * this->bytesPerPixel();
|
| + }
|
| +
|
| bool operator==(const SkImageInfo& other) const {
|
| return 0 == memcmp(this, &other, sizeof(other));
|
| }
|
| bool operator!=(const SkImageInfo& other) const {
|
| return 0 != memcmp(this, &other, sizeof(other));
|
| }
|
| +
|
| + void unflatten(SkFlattenableReadBuffer&);
|
| + void flatten(SkFlattenableWriteBuffer&) const;
|
| +
|
| + size_t getSafeSize(size_t rowBytes) const {
|
| + if (0 == fHeight) {
|
| + return 0;
|
| + }
|
| + return (fHeight - 1) * rowBytes + fWidth * this->bytesPerPixel();
|
| + }
|
| };
|
|
|
| #endif
|
|
|