Implements a matrix convolution filter (raster path only). The filtering loop
is templated on the tiling mode for speed: interior pixels are unconditionally
fetched; border pixels apply the appropriate tiling mode before fetching. It
handles target, bias, divisor (as gain), and edge modes (named to be more
skia-like). It does not handle the "preserveAlpha" semantics of
feConvolveMatrix, nor "kernelUnitLength".
git-svn-id: http://skia.googlecode.com/svn/trunk/gyp@5592 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/bench.gypi b/bench.gypi
index 81a00ed..ecb533a 100644
--- a/bench.gypi
+++ b/bench.gypi
@@ -20,6 +20,7 @@
'../bench/InterpBench.cpp',
'../bench/MathBench.cpp',
'../bench/MatrixBench.cpp',
+ '../bench/MatrixConvolutionBench.cpp',
'../bench/MemoryBench.cpp',
'../bench/MorphologyBench.cpp',
'../bench/MutexBench.cpp',
diff --git a/effects.gypi b/effects.gypi
index 164fc82..aef7f2c 100644
--- a/effects.gypi
+++ b/effects.gypi
@@ -33,6 +33,7 @@
'<(skia_src_path)/effects/SkLayerDrawLooper.cpp',
'<(skia_src_path)/effects/SkLayerRasterizer.cpp',
'<(skia_src_path)/effects/SkLightingImageFilter.cpp',
+ '<(skia_src_path)/effects/SkMatrixConvolutionImageFilter.cpp',
'<(skia_src_path)/effects/SkMorphologyImageFilter.cpp',
'<(skia_src_path)/effects/SkPaintFlagsDrawFilter.cpp',
'<(skia_src_path)/effects/SkPixelXorXfermode.cpp',
diff --git a/gmslides.gypi b/gmslides.gypi
index a0d418b..003cb05 100644
--- a/gmslides.gypi
+++ b/gmslides.gypi
@@ -46,6 +46,7 @@
'../gm/imagefiltersgraph.cpp',
'../gm/lcdtext.cpp',
'../gm/linepaths.cpp',
+ '../gm/matrixconvolution.cpp',
'../gm/morphology.cpp',
'../gm/ninepatchstretch.cpp',
'../gm/nocolorbleed.cpp',