Chromium Code Reviews| Index: include/effects/SkTransparentShader.h |
| diff --git a/include/effects/SkTransparentShader.h b/include/effects/SkTransparentShader.h |
| index 2b3f99814aa2139df38d3c9c721f80e33ae1bf34..7c0b0c90d9f1780ec4fa2a7fc4b6f36c507e70c3 100644 |
| --- a/include/effects/SkTransparentShader.h |
| +++ b/include/effects/SkTransparentShader.h |
| @@ -14,20 +14,34 @@ class SK_API SkTransparentShader : public SkShader { |
| public: |
| SkTransparentShader() {} |
| - virtual uint32_t getFlags() SK_OVERRIDE; |
| - virtual bool setContext(const SkBitmap& device, |
| - const SkPaint& paint, |
| - const SkMatrix& matrix) SK_OVERRIDE; |
| - virtual void shadeSpan(int x, int y, SkPMColor[], int count) SK_OVERRIDE; |
| - virtual void shadeSpan16(int x, int y, uint16_t span[], int count) SK_OVERRIDE; |
| + virtual bool validContext(const SkBitmap& device, |
| + const SkPaint& paint, |
| + const SkMatrix& matrix) const SK_OVERRIDE; |
| + virtual SkShader::Context* createContext( |
| + const SkBitmap& device, const SkPaint& paint, |
|
scroggo
2014/03/24 21:24:46
device should be on the same line, assuming it fit
|
| + const SkMatrix& matrix, void* storage) const SK_OVERRIDE; |
| + virtual size_t contextSize() const SK_OVERRIDE; |
| + |
| + class TransparentShaderContext : public SkShader::Context { |
| + public: |
| + TransparentShaderContext(const SkTransparentShader& shader, const SkBitmap& device, |
| + const SkPaint& paint, const SkMatrix& matrix); |
| + virtual ~TransparentShaderContext(); |
| + |
| + virtual uint32_t getFlags() const SK_OVERRIDE; |
| + virtual void shadeSpan(int x, int y, SkPMColor[], int count) SK_OVERRIDE; |
| + virtual void shadeSpan16(int x, int y, uint16_t span[], int count) SK_OVERRIDE; |
| + private: |
| + const SkBitmap* fDevice; |
| + uint8_t fAlpha; |
| + |
| + typedef SkShader::Context INHERITED; |
| + }; |
| SK_DEVELOPER_TO_STRING() |
| SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkTransparentShader) |
| private: |
| - // these are a cache from the call to setContext() |
| - const SkBitmap* fDevice; |
| - uint8_t fAlpha; |
| SkTransparentShader(SkReadBuffer& buffer) : INHERITED(buffer) {} |