Code

fix bbox calculation for groups that contain groups with nothing in them (zero bbox...
[inkscape.git] / src / display / nr-filter-displacement-map.h
index 83601a5acdf8b64668214d4ffaed6c06ea62fe6f..34ba3aad263447330946e7c0ded8d9ca622b7229 100644 (file)
  * Released under GNU GPL, read the file 'COPYING' for more information
  */
 
+#include "sp-fedisplacementmap.h"
 #include "display/nr-filter-primitive.h"
 #include "display/nr-filter-slot.h"
+#include "display/nr-filter-units.h"
 #include "libnr/nr-matrix.h"
 #include "libnr/nr-rect-l.h"
 
@@ -28,15 +30,16 @@ public:
     virtual void set_input(int slot);
     virtual void set_input(int input, int slot);
     virtual void set_scale(double s);
-    virtual void set_channel_selector(int channel, int s);
-    virtual int render(FilterSlot &slot, Matrix const &trans);
+    virtual void set_channel_selector(int s, FilterDisplacementMapChannelSelector channel);
+    virtual int render(FilterSlot &slot, FilterUnits const &units);
     virtual void area_enlarge(NRRectL &area, Matrix const &trans);
+    virtual FilterTraits get_input_traits();
 
 private:
     double scale;
     int _input2;
-    int Xchannel;
-    int Ychannel;
+    FilterDisplacementMapChannelSelector Xchannel;
+    FilterDisplacementMapChannelSelector Ychannel;
     int out_x0, out_y0, out_w, out_h;
 };