Index: include/core/SkShader.h |
diff --git a/include/core/SkShader.h b/include/core/SkShader.h |
index 36256f6f09e4e73cc9d7e22d31982e6b1aecfc07..39715326d7e3e1f36d083c65ea07690dbcb79cf8 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,19 @@ public: |
* ContextRec acts as a parameter bundle for creating Contexts. |
*/ |
struct ContextRec { |
- ContextRec(const SkPaint& paint, const SkMatrix& matrix, const SkMatrix* localM) |
+ ContextRec(const SkPaint& paint, const SkMatrix& matrix, const SkMatrix* localM, |
+ SkColorType devColorType, SkColorProfileType devColorProfile) |
: fPaint(&paint) |
, fMatrix(&matrix) |
- , fLocalMatrix(localM) {} |
+ , fLocalMatrix(localM) |
+ , fDeviceColorType(devColorType) |
+ , fDeviceColorProfile(devColorProfile) {} |
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 SkColorType fDeviceColorType; |
+ const SkColorProfileType fDeviceColorProfile; |
f(malita)
2016/02/22 16:09:50
I'm kinda torn on pushing explicit dst color info
f(malita)
2016/02/22 17:08:23
PS#2 implements this alternative approach, replaci
|
}; |
class Context : public ::SkNoncopyable { |
@@ -188,7 +194,7 @@ public: |
* Override this if your subclass overrides createContext, to return the correct size of |
* your subclass' context. |
*/ |
- virtual size_t contextSize() const; |
+ virtual size_t contextSize(const ContextRec&) const; |
/** |
* Returns true if this shader is just a bitmap, and if not null, returns the bitmap, |