7f18e8ab01ce21c98cc7b9f58ffe5e771ebbb64eLiam P. White#ifndef SEEN_NR_FILTER_DISPLACEMENT_MAP_H
7f18e8ab01ce21c98cc7b9f58ffe5e771ebbb64eLiam P. White#define SEEN_NR_FILTER_DISPLACEMENT_MAP_H
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues/*
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues * feDisplacementMap filter primitive renderer
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues *
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues * Authors:
5ef6cb9428f2e6f5457e890a1c3b37f53730c07aFelipe C. da S. Sanches * Felipe Corrêa da Silva Sanches <juca@members.fsf.org>
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues *
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues * Copyright (C) 2007 authors
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues *
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues * Released under GNU GPL, read the file 'COPYING' for more information
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues */
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
6c3e745a94ef6b25a4ef9f018d350a7535aa45afTed Gould#include "filters/displacementmap.h"
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues#include "display/nr-filter-primitive.h"
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues#include "display/nr-filter-slot.h"
fb86717633bfcfe161571aed7058ea6a39b7a69bkiirala#include "display/nr-filter-units.h"
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
d9a7c806ee7f408ddb61ff4f233c9d96111ee2b5johanengelennamespace Inkscape {
d9a7c806ee7f408ddb61ff4f233c9d96111ee2b5johanengelennamespace Filters {
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
b1bec4de820f8b6d32105117c7d1015e5093af8bjucabluesclass FilterDisplacementMap : public FilterPrimitive {
b1bec4de820f8b6d32105117c7d1015e5093af8bjucabluespublic:
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues FilterDisplacementMap();
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues static FilterPrimitive *create();
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues virtual ~FilterDisplacementMap();
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
1cf2607271f83cc4b20ccace552395d793055c90Krzysztof Kosiński virtual void render_cairo(FilterSlot &slot);
7bda77e763c0af49270427593108b66455dfd125Krzysztof Kosinski virtual void area_enlarge(Geom::IntRect &area, Geom::Affine const &trans);
1cf2607271f83cc4b20ccace552395d793055c90Krzysztof Kosiński virtual double complexity(Geom::Affine const &ctm);
1cf2607271f83cc4b20ccace552395d793055c90Krzysztof Kosiński
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues virtual void set_input(int slot);
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues virtual void set_input(int input, int slot);
514fb30cb30a34ab3d77700af8093d808fb39815jucablues virtual void set_scale(double s);
2b3b5a2a04c62bc07b7f0740e7c705f142f9b173jucablues virtual void set_channel_selector(int s, FilterDisplacementMapChannelSelector channel);
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
b1bec4de820f8b6d32105117c7d1015e5093af8bjucabluesprivate:
514fb30cb30a34ab3d77700af8093d808fb39815jucablues double scale;
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues int _input2;
61e85378bd8a5f62fc61100353ae32890127ddabKrzysztof Kosiński unsigned Xchannel, Ychannel;
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues};
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
d9a7c806ee7f408ddb61ff4f233c9d96111ee2b5johanengelen} /* namespace Filters */
d9a7c806ee7f408ddb61ff4f233c9d96111ee2b5johanengelen} /* namespace Inkscape */
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues#endif /* __NR_FILTER_DISPLACEMENT_MAP_H__ */
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues/*
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues Local Variables:
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues mode:c++
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues c-file-style:"stroustrup"
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues indent-tabs-mode:nil
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues fill-column:99
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues End:
b1bec4de820f8b6d32105117c7d1015e5093af8bjucablues*/
a4030d5ca449e7e384bc699cd249ee704faaeab0Chris Morgan// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :