1 #ifndef SP_FESPECULARLIGHTING_H_SEEN
2 #define SP_FESPECULARLIGHTING_H_SEEN
4 /** \file
5 * SVG <feSpecularLighting> implementation, see SpecularLighting.cpp.
6 */
7 /*
8 * Authors:
9 * Hugo Rodrigues <haa.rodrigues@gmail.com>
10 * Jean-Rene Reinhard <jr@komite.net>
11 *
12 * Copyright (C) 2006 Hugo Rodrigues
13 * 2007 authors
14 *
15 * Released under GNU GPL, read the file 'COPYING' for more information
16 */
18 #include "sp-filter.h"
19 #include "specularlighting-fns.h"
21 namespace Inkscape {
22 namespace Filters {
23 class FilterSpecularLighting;
24 }
25 }
27 /* FeSpecularLighting base class */
28 class SPFeSpecularLightingClass;
30 struct SPFeSpecularLighting : public SPFilterPrimitive {
31 /** SPECULARLIGHTING ATTRIBUTES HERE */
32 /** surfaceScale attribute */
33 gfloat surfaceScale;
34 guint surfaceScale_set : 1;
35 /** specularConstant attribute */
36 gfloat specularConstant;
37 guint specularConstant_set : 1;
38 /** specularConstant attribute */
39 gfloat specularExponent;
40 guint specularExponent_set : 1;
41 /** kernelUnitLenght attribute */
42 NumberOptNumber kernelUnitLength;
43 /** lighting-color property */
44 guint32 lighting_color;
45 guint lighting_color_set : 1;
47 Inkscape::Filters::FilterSpecularLighting *renderer;
48 };
50 struct SPFeSpecularLightingClass {
51 SPFilterPrimitiveClass parent_class;
52 };
54 GType sp_feSpecularLighting_get_type();
57 #endif /* !SP_FESPECULARLIGHTING_H_SEEN */
59 /*
60 Local Variables:
61 mode:c++
62 c-file-style:"stroustrup"
63 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
64 indent-tabs-mode:nil
65 fill-column:99
66 End:
67 */
68 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :