| Index: include/core/SkColor.h
|
| diff --git a/include/core/SkColor.h b/include/core/SkColor.h
|
| index 1ba1331c1a7261f3faaba32002dc113ac9ed0397..3f0e9dcd1f50b994118cdeb23ba511c586620e6c 100644
|
| --- a/include/core/SkColor.h
|
| +++ b/include/core/SkColor.h
|
| @@ -160,4 +160,34 @@ SK_API SkPMColor SkPreMultiplyColor(SkColor c);
|
| */
|
| typedef SkPMColor (*SkXfermodeProc)(SkPMColor src, SkPMColor dst);
|
|
|
| +///////////////////////////////////////////////////////////////////////////////////////////////////
|
| +
|
| +/*
|
| + * The float values are 0...1 premultiplied
|
| + */
|
| +struct SK_ATTRIBUTE(aligned(16)) SkPM4f {
|
| + float fVec[4];
|
| +
|
| + float a() const { return fVec[SK_A32_SHIFT/8]; }
|
| +};
|
| +
|
| +/*
|
| + * The float values are 0...1 unpremultiplied
|
| + */
|
| +struct SkColor4f {
|
| + float fA;
|
| + float fR;
|
| + float fG;
|
| + float fB;
|
| +
|
| + static SkColor4f Normalize(float a, float r, float g, float b);
|
| + static SkColor4f FromColor(SkColor);
|
| +
|
| + SkColor4f normalize() const {
|
| + return Normalize(fA, fR, fG, fB);
|
| + }
|
| +
|
| + SkPM4f premul() const;
|
| +};
|
| +
|
| #endif
|
|
|