2 Copyright 1999-2014 ImageMagick Studio LLC, a non-profit organization
3 dedicated to making software imaging solutions freely available.
5 You may not use this file except in compliance with the License.
6 obtain a copy of the License at
8 http://www.imagemagick.org/script/license.php
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
16 MagickWand Application Programming Interface declarations.
19 #ifndef _MAGICKWAND_MAGICKWAND_H
20 #define _MAGICKWAND_MAGICKWAND_H
22 #if defined(__cplusplus) || defined(c_plusplus)
26 #if !defined(_MAGICKWAND_CONFIG_H)
27 # define _MAGICKWAND_CONFIG_H
28 # if !defined(vms) && !defined(macintosh)
29 # include "MagickCore/magick-config.h"
31 # include "magick-config.h"
33 #if defined(_magickcore_const) && !defined(const)
34 # define const _magickcore_const
36 #if defined(_magickcore_inline) && !defined(inline)
37 # define inline _magickcore_inline
39 #if defined(_magickcore_restrict) && !defined(restrict)
40 # define restrict _magickcore_restrict
42 # if defined(__cplusplus) || defined(c_plusplus)
47 #define MAGICKWAND_CHECK_VERSION(major,minor,micro) \
48 ((MAGICKWAND_MAJOR_VERSION > (major)) || \
49 ((MAGICKWAND_MAJOR_VERSION == (major)) && \
50 (MAGICKWAND_MINOR_VERSION > (minor))) || \
51 ((MAGICKWAND_MAJOR_VERSION == (major)) && \
52 (MAGICKWAND_MINOR_VERSION == (minor)) && \
53 (MAGICKWAND_MICRO_VERSION >= (micro))))
59 #include <sys/types.h>
62 #if defined(WIN32) || defined(WIN64)
63 # define MAGICKWAND_WINDOWS_SUPPORT
65 # define MAGICKWAND_POSIX_SUPPORT
68 typedef struct _MagickWand
71 #include "MagickWand/method-attribute.h"
72 #include "MagickCore/MagickCore.h"
73 #include "MagickWand/animate.h"
74 #include "MagickWand/compare.h"
75 #include "MagickWand/composite.h"
76 #include "MagickWand/conjure.h"
77 #include "MagickWand/convert.h"
78 #include "MagickWand/deprecate.h"
79 #include "MagickWand/display.h"
80 #include "MagickWand/drawing-wand.h"
81 #include "MagickWand/identify.h"
82 #include "MagickWand/import.h"
83 #include "MagickWand/wandcli.h"
84 #include "MagickWand/operation.h"
85 #include "MagickWand/magick-cli.h"
86 #include "MagickWand/magick-property.h"
87 #include "MagickWand/magick-image.h"
88 #include "MagickWand/mogrify.h"
89 #include "MagickWand/montage.h"
90 #include "MagickWand/pixel-iterator.h"
91 #include "MagickWand/pixel-wand.h"
92 #include "MagickWand/stream.h"
93 #include "MagickWand/wand-view.h"
95 extern WandExport char
96 *MagickGetException(const MagickWand *,ExceptionType *);
98 extern WandExport ExceptionType
99 MagickGetExceptionType(const MagickWand *);
101 extern WandExport MagickBooleanType
102 IsMagickWand(const MagickWand *),
103 IsMagickWandInstantiated(void),
104 MagickClearException(MagickWand *),
105 MagickSetIteratorIndex(MagickWand *,const ssize_t);
107 extern WandExport MagickWand
108 *CloneMagickWand(const MagickWand *),
109 *DestroyMagickWand(MagickWand *),
110 *NewMagickWand(void),
111 *NewMagickWandFromImage(const Image *);
113 extern WandExport ssize_t
114 MagickGetIteratorIndex(MagickWand *);
116 extern WandExport void
117 ClearMagickWand(MagickWand *),
118 MagickWandGenesis(void),
119 MagickWandTerminus(void),
120 *MagickRelinquishMemory(void *),
121 MagickResetIterator(MagickWand *),
122 MagickSetFirstIterator(MagickWand *),
123 MagickSetLastIterator(MagickWand *);
125 #if defined(__cplusplus) || defined(c_plusplus)