1 #ifndef SP_FECONVOLVEMATRIX_H_SEEN
2 #define SP_FECONVOLVEMATRIX_H_SEEN
4 /** \file
5 * SVG <feConvolveMatrix> implementation, see sp-feConvolveMatrix.cpp.
6 */
7 /*
8 * Authors:
9 * Felipe CorrĂȘa da Silva Sanches <felipe.sanches@gmail.com>
10 * Hugo Rodrigues <haa.rodrigues@gmail.com>
11 *
12 * Copyright (C) 2006 Hugo Rodrigues
13 *
14 * Released under GNU GPL, read the file 'COPYING' for more information
15 */
17 #include "sp-filter.h"
18 #include "sp-feconvolvematrix-fns.h"
19 #include "number-opt-number.h"
20 #include "display/nr-filter-convolve-matrix.h"
21 #include <vector>
23 /* FeConvolveMatrix base class */
24 class SPFeConvolveMatrixClass;
26 struct SPFeConvolveMatrix : public SPFilterPrimitive {
27 /* CONVOLVEMATRIX ATTRIBUTES */
28 NumberOptNumber order;
29 std::vector<gdouble> kernelMatrix;
30 double divisor, bias;
31 int targetX, targetY;
32 NR::FilterConvolveMatrixEdgeMode edgeMode;
33 NumberOptNumber kernelUnitLength;
34 bool preserveAlpha;
35 };
37 struct SPFeConvolveMatrixClass {
38 SPFilterPrimitiveClass parent_class;
39 };
41 GType sp_feConvolveMatrix_get_type();
44 #endif /* !SP_FECONVOLVEMATRIX_H_SEEN */
46 /*
47 Local Variables:
48 mode:c++
49 c-file-style:"stroustrup"
50 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
51 indent-tabs-mode:nil
52 fill-column:99
53 End:
54 */
55 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :