| Index: include/effects/SkMatrixConvolutionImageFilter.h
|
| diff --git a/include/effects/SkMatrixConvolutionImageFilter.h b/include/effects/SkMatrixConvolutionImageFilter.h
|
| index b2602fe6f889c46ec9222b83f9ff370b7afc2b26..d3cf8e34fccf7381c47da54758303f3ed4471b6c 100644
|
| --- a/include/effects/SkMatrixConvolutionImageFilter.h
|
| +++ b/include/effects/SkMatrixConvolutionImageFilter.h
|
| @@ -47,9 +47,18 @@ public:
|
| alpha is copied from the source image.
|
| @param input The input image filter. If NULL, the src bitmap
|
| passed to filterImage() is used instead.
|
| + @param cropRect The rectangle to which the output processing will be limited.
|
| */
|
|
|
| - SkMatrixConvolutionImageFilter(const SkISize& kernelSize, const SkScalar* kernel, SkScalar gain, SkScalar bias, const SkIPoint& target, TileMode tileMode, bool convolveAlpha, SkImageFilter* input = NULL);
|
| + SkMatrixConvolutionImageFilter(const SkISize& kernelSize,
|
| + const SkScalar* kernel,
|
| + SkScalar gain,
|
| + SkScalar bias,
|
| + const SkIPoint& target,
|
| + TileMode tileMode,
|
| + bool convolveAlpha,
|
| + SkImageFilter* input = NULL,
|
| + const CropRect* cropRect = NULL);
|
| virtual ~SkMatrixConvolutionImageFilter();
|
|
|
| SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkMatrixConvolutionImageFilter)
|
| @@ -62,7 +71,10 @@ protected:
|
| SkBitmap* result, SkIPoint* loc) SK_OVERRIDE;
|
|
|
| #if SK_SUPPORT_GPU
|
| - virtual bool asNewEffect(GrEffectRef** effect, GrTexture*, const SkMatrix& matrix) const SK_OVERRIDE;
|
| + virtual bool asNewEffect(GrEffectRef** effect,
|
| + GrTexture*,
|
| + const SkMatrix& matrix,
|
| + const SkIRect& bounds) const SK_OVERRIDE;
|
| #endif
|
|
|
| private:
|
| @@ -76,11 +88,23 @@ private:
|
| typedef SkImageFilter INHERITED;
|
|
|
| template <class PixelFetcher, bool convolveAlpha>
|
| - void filterPixels(const SkBitmap& src, SkBitmap* result, const SkIRect& rect);
|
| + void filterPixels(const SkBitmap& src,
|
| + SkBitmap* result,
|
| + const SkIRect& rect,
|
| + const SkIRect& bounds);
|
| template <class PixelFetcher>
|
| - void filterPixels(const SkBitmap& src, SkBitmap* result, const SkIRect& rect);
|
| - void filterInteriorPixels(const SkBitmap& src, SkBitmap* result, const SkIRect& rect);
|
| - void filterBorderPixels(const SkBitmap& src, SkBitmap* result, const SkIRect& rect);
|
| + void filterPixels(const SkBitmap& src,
|
| + SkBitmap* result,
|
| + const SkIRect& rect,
|
| + const SkIRect& bounds);
|
| + void filterInteriorPixels(const SkBitmap& src,
|
| + SkBitmap* result,
|
| + const SkIRect& rect,
|
| + const SkIRect& bounds);
|
| + void filterBorderPixels(const SkBitmap& src,
|
| + SkBitmap* result,
|
| + const SkIRect& rect,
|
| + const SkIRect& bounds);
|
| };
|
|
|
| #endif
|
|
|