Code

patch by Dennis Lin: optionally for debugging paint the rect-to-redraw yellow
[inkscape.git] / src / display / nr-filter-gaussian.h
index f6afc109b114f1608e62b38176b0efca20364afc..7b2a96ca583711cf5d77240585a3bcb03ba2c9f6 100644 (file)
@@ -18,6 +18,7 @@
 #include "display/nr-filter-slot.h"
 #include "libnr/nr-pixblock.h"
 #include "libnr/nr-matrix.h"
+#include "libnr/nr-rect-l.h"
 
 enum {
     BLUR_QUALITY_BEST = 2,
@@ -36,7 +37,8 @@ public:
     virtual ~FilterGaussian();
 
     virtual int render(FilterSlot &slot, Matrix const &trans);
-    virtual int get_enlarge(Matrix const &m);
+    virtual void area_enlarge(NRRectL &area, Matrix const &m);
+    virtual FilterTraits get_input_traits();
 
     /**
      * Set the standard deviation value for gaussian blur. Deviation along
@@ -58,21 +60,6 @@ public:
 private:
     double _deviation_x;
     double _deviation_y;
-
-    int _kernel_size(double expansionX, double expansionY);
-    void _make_kernel(double *kernel, double deviation, double expansion);
-    int _effect_area_scr(double deviation, double expansion);
-    int _effect_subsample_step(int scr_len_x, int quality);
-    int _effect_subsample_step_log2(int scr_len_x, int quality);
-
-    inline int _min(int const a, int const b)
-    {
-        return ((a < b) ? a : b);
-    }
-    inline int _max(int const a, int const b)
-    {
-        return ((a > b) ? a : b);
-    }
 };