| Index: include/core/SkShader.h
|
| diff --git a/include/core/SkShader.h b/include/core/SkShader.h
|
| index 8e69fafa78a34500a0b70f4d4f981391f152c0cc..72cd4a2dbeec7535bcf5e2b5db178fb553e9cc9a 100644
|
| --- a/include/core/SkShader.h
|
| +++ b/include/core/SkShader.h
|
| @@ -10,6 +10,7 @@
|
|
|
| #include "SkBitmap.h"
|
| #include "SkFlattenable.h"
|
| +#include "SkImageInfo.h"
|
| #include "SkMask.h"
|
| #include "SkMatrix.h"
|
| #include "SkPaint.h"
|
| @@ -96,14 +97,22 @@ public:
|
| * ContextRec acts as a parameter bundle for creating Contexts.
|
| */
|
| struct ContextRec {
|
| - ContextRec(const SkPaint& paint, const SkMatrix& matrix, const SkMatrix* localM)
|
| + enum DstType {
|
| + kPMColor_DstType, // clients prefer shading into PMColor dest
|
| + kPM4f_DstType, // clients prefer shading into PM4f dest
|
| + };
|
| +
|
| + ContextRec(const SkPaint& paint, const SkMatrix& matrix, const SkMatrix* localM,
|
| + DstType dstType)
|
| : fPaint(&paint)
|
| , fMatrix(&matrix)
|
| - , fLocalMatrix(localM) {}
|
| + , fLocalMatrix(localM)
|
| + , fPreferredDstType(dstType) {}
|
|
|
| - const SkPaint* fPaint; // the current paint associated with the draw
|
| - const SkMatrix* fMatrix; // the current matrix in the canvas
|
| - const SkMatrix* fLocalMatrix; // optional local matrix
|
| + const SkPaint* fPaint; // the current paint associated with the draw
|
| + const SkMatrix* fMatrix; // the current matrix in the canvas
|
| + const SkMatrix* fLocalMatrix; // optional local matrix
|
| + const DstType fPreferredDstType; // the "natural" client dest type
|
| };
|
|
|
| class Context : public ::SkNoncopyable {
|
|
|