| Index: include/effects/SkTransparentShader.h
|
| diff --git a/include/effects/SkTransparentShader.h b/include/effects/SkTransparentShader.h
|
| index 2b3f99814aa2139df38d3c9c721f80e33ae1bf34..1160f025c531cacd644dd1a53d783e91197fd968 100644
|
| --- a/include/effects/SkTransparentShader.h
|
| +++ b/include/effects/SkTransparentShader.h
|
| @@ -14,20 +14,30 @@ 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 SkShader::Context* createContext(const SkBitmap& device, const SkPaint& paint,
|
| + 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;
|
| +
|
| + 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) {}
|
|
|
|
|