Code

4afdcfbb497dd7597504bf368c6283f80b63a15e
[inkscape.git] / src / extension / internal / bitmap / imagemagick.h
1 #ifndef __INKSCAPE_EXTENSION_INTERNAL_BITMAP_IMAGEMAGICK_H__
2 #define __INKSCAPE_EXTENSION_INTERNAL_BITMAP_IMAGEMAGICK_H__
4 /*
5  * Copyright (C) 2007 Authors:
6  *   Christopher Brown <audiere@gmail.com>
7  *   Ted Gould <ted@gould.cx>
8  *
9  * Released under GNU GPL, read the file 'COPYING' for more information
10  */
12 #include "extension/implementation/implementation.h"
13 #include "extension/extension-forward.h"
14 #include <Magick++.h>
16 namespace Inkscape {
17 namespace Extension {
18 namespace Internal {
19 namespace Bitmap {
21 class ImageMagick : public Inkscape::Extension::Implementation::Implementation {
23 private:
24         bool _loaded;
26         Inkscape::XML::Node** _nodes;   
27         
28         Magick::Image** _images;
29         int _imageCount;
30         char** _caches;
31         unsigned* _cacheLengths;
32         
33         const char** _originals;
34 public:
35         virtual void applyEffect(Magick::Image *image) { };
36         virtual void refreshParameters(Inkscape::Extension::Effect *module) { };
37         bool load(Inkscape::Extension::Extension *module);
38     
39         void commitDocument(void);
40         /*void cancelDocument(void);*/
42         void readImage(char const *xlink, Magick::Image *image);
43         void effect(Inkscape::Extension::Effect *module, Inkscape::UI::View::View *document);
44         
45         Gtk::Widget* prefs_effect(Inkscape::Extension::Effect *module, Inkscape::UI::View::View * view, sigc::signal<void> * changeSignal);
46 };
48 }; /* namespace Bitmap */
49 }; /* namespace Internal */
50 }; /* namespace Extension */
51 }; /* namespace Inkscape */
53 #endif /* __INKSCAPE_EXTENSION_INTERNAL_BITMAP_IMAGEMAGICK_H__ */