| Index: src/core/SkFilterShader.h
|
| diff --git a/src/core/SkFilterShader.h b/src/core/SkFilterShader.h
|
| index 11add0cf17c6304da59e9baf0289bfe04ad5a98c..4ef45772482bf0cf6d7e06730bd9dc0378ac8fc0 100644
|
| --- a/src/core/SkFilterShader.h
|
| +++ b/src/core/SkFilterShader.h
|
| @@ -17,12 +17,29 @@
|
| SkFilterShader(SkShader* shader, SkColorFilter* filter);
|
| virtual ~SkFilterShader();
|
|
|
| - virtual uint32_t getFlags() SK_OVERRIDE;
|
| - virtual bool setContext(const SkBitmap&, const SkPaint&,
|
| - const SkMatrix&) SK_OVERRIDE;
|
| - virtual void endContext() SK_OVERRIDE;
|
| - virtual void shadeSpan(int x, int y, SkPMColor[], int count) SK_OVERRIDE;
|
| - virtual void shadeSpan16(int x, int y, uint16_t[], int count) SK_OVERRIDE;
|
| + virtual bool validContext(const SkBitmap&, const SkPaint&,
|
| + const SkMatrix&, SkMatrix* totalInverse = NULL) const SK_OVERRIDE;
|
| + virtual SkShader::Context* createContext(const SkBitmap&, const SkPaint&,
|
| + const SkMatrix&, void* storage) const SK_OVERRIDE;
|
| + virtual size_t contextSize() const SK_OVERRIDE;
|
| +
|
| + class FilterShaderContext : public SkShader::Context {
|
| + public:
|
| + // Takes ownership of shaderContext and calls its destructor.
|
| + FilterShaderContext(const SkFilterShader& filterShader, SkShader::Context* shaderContext,
|
| + const SkBitmap& device, const SkPaint& paint, const SkMatrix& matrix);
|
| + virtual ~FilterShaderContext();
|
| +
|
| + 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[], int count) SK_OVERRIDE;
|
| +
|
| + private:
|
| + SkShader::Context* fShaderContext;
|
| +
|
| + typedef SkShader::Context INHERITED;
|
| + };
|
|
|
| SK_TO_STRING_OVERRIDE()
|
| SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkFilterShader)
|
|
|