1 /*
2 * feTile filter primitive renderer
3 *
4 * Authors:
5 * Felipe CorrĂȘa da Silva Sanches <felipe.sanches@gmail.com>
6 *
7 * Copyright (C) 2007 authors
8 *
9 * Released under GNU GPL, read the file 'COPYING' for more information
10 */
12 #include "display/nr-filter-tile.h"
13 #include "display/nr-filter-units.h"
15 namespace Inkscape {
16 namespace Filters {
18 FilterTile::FilterTile()
19 {
20 g_warning("FilterTile::render not implemented.");
21 }
23 FilterPrimitive * FilterTile::create() {
24 return new FilterTile();
25 }
27 FilterTile::~FilterTile()
28 {}
30 int FilterTile::render(FilterSlot &slot, FilterUnits const &/*units*/) {
31 NRPixBlock *in = slot.get(_input);
32 if (!in) {
33 g_warning("Missing source image for feTile (in=%d)", _input);
34 return 1;
35 }
37 NRPixBlock *out = new NRPixBlock;
39 nr_pixblock_setup_fast(out, in->mode,
40 in->area.x0, in->area.y0, in->area.x1, in->area.y1,
41 true);
43 unsigned char *in_data = NR_PIXBLOCK_PX(in);
44 unsigned char *out_data = NR_PIXBLOCK_PX(out);
46 //IMPLEMENT ME!
47 g_warning("Renderer for feTile is not implemented.");
48 (void)in_data;
49 (void)out_data;
51 out->empty = FALSE;
52 slot.set(_output, out);
53 return 0;
54 }
56 void FilterTile::area_enlarge(NRRectL &/*area*/, Geom::Matrix const &/*trans*/)
57 {
58 }
60 FilterTraits FilterTile::get_input_traits() {
61 return TRAIT_PARALLER;
62 }
64 } /* namespace Filters */
65 } /* namespace Inkscape */
67 /*
68 Local Variables:
69 mode:c++
70 c-file-style:"stroustrup"
71 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
72 indent-tabs-mode:nil
73 fill-column:99
74 End:
75 */
76 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :