• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2   Copyright 1999-2019 ImageMagick Studio LLC, a non-profit organization
3   dedicated to making software imaging solutions freely available.
4 
5   You may not use this file except in compliance with the License.  You may
6   obtain a copy of the License at
7 
8     https://imagemagick.org/script/license.php
9 
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.
15 
16   MagickWand Application Programming Interface declarations.
17 */
18 
19 #ifndef MAGICKWAND_MAGICKWAND_H
20 #define MAGICKWAND_MAGICKWAND_H
21 
22 #if defined(__cplusplus) || defined(c_plusplus)
23 extern "C" {
24 #endif
25 
26 #if !defined(MAGICKWAND_CONFIG_H)
27 # define MAGICKWAND_CONFIG_H
28 # if !defined(vms) && !defined(macintosh)
29 #  include "MagickCore/magick-config.h"
30 # else
31 #  include "magick-config.h"
32 # endif
33 #if defined(_magickcore_const) && !defined(const)
34 # define const _magickcore_const
35 #endif
36 #if defined(_magickcore_inline) && !defined(inline)
37 # define inline _magickcore_inline
38 #endif
39 #if !defined(magick_restrict)
40 # if !defined(_magickcore_restrict)
41 #  define magick_restrict restrict
42 # else
43 #  define magick_restrict _magickcore_restrict
44 # endif
45 #endif
46 # if defined(__cplusplus) || defined(c_plusplus)
47 #  undef inline
48 # endif
49 #endif
50 
51 #define MAGICKWAND_CHECK_VERSION(major,minor,micro) \
52   ((MAGICKWAND_MAJOR_VERSION > (major)) || \
53     ((MAGICKWAND_MAJOR_VERSION == (major)) && \
54      (MAGICKWAND_MINOR_VERSION > (minor))) || \
55     ((MAGICKWAND_MAJOR_VERSION == (major)) && \
56      (MAGICKWAND_MINOR_VERSION == (minor)) && \
57      (MAGICKWAND_MICRO_VERSION >= (micro))))
58 
59 #include <stdio.h>
60 #include <stdarg.h>
61 #include <stdlib.h>
62 #include <math.h>
63 #include <sys/types.h>
64 #include <time.h>
65 
66 #if defined(WIN32) || defined(WIN64)
67 #  define MAGICKWAND_WINDOWS_SUPPORT
68 #else
69 #  define MAGICKWAND_POSIX_SUPPORT
70 #endif
71 
72 typedef struct _MagickWand
73   MagickWand;
74 
75 #include "MagickWand/method-attribute.h"
76 #include "MagickCore/MagickCore.h"
77 #include "MagickWand/animate.h"
78 #include "MagickWand/compare.h"
79 #include "MagickWand/composite.h"
80 #include "MagickWand/conjure.h"
81 #include "MagickWand/convert.h"
82 #include "MagickWand/deprecate.h"
83 #include "MagickWand/display.h"
84 #include "MagickWand/drawing-wand.h"
85 #include "MagickWand/identify.h"
86 #include "MagickWand/import.h"
87 #include "MagickWand/wandcli.h"
88 #include "MagickWand/operation.h"
89 #include "MagickWand/magick-cli.h"
90 #include "MagickWand/magick-property.h"
91 #include "MagickWand/magick-image.h"
92 #include "MagickWand/mogrify.h"
93 #include "MagickWand/montage.h"
94 #include "MagickWand/pixel-iterator.h"
95 #include "MagickWand/pixel-wand.h"
96 #include "MagickWand/stream.h"
97 #include "MagickWand/wand-view.h"
98 
99 extern WandExport char
100   *MagickGetException(const MagickWand *,ExceptionType *);
101 
102 extern WandExport ExceptionType
103   MagickGetExceptionType(const MagickWand *);
104 
105 extern WandExport MagickBooleanType
106   IsMagickWand(const MagickWand *),
107   IsMagickWandInstantiated(void),
108   MagickClearException(MagickWand *),
109   MagickSetIteratorIndex(MagickWand *,const ssize_t);
110 
111 extern WandExport MagickWand
112   *CloneMagickWand(const MagickWand *),
113   *DestroyMagickWand(MagickWand *),
114   *NewMagickWand(void),
115   *NewMagickWandFromImage(const Image *);
116 
117 extern WandExport ssize_t
118   MagickGetIteratorIndex(MagickWand *);
119 
120 extern WandExport void
121   ClearMagickWand(MagickWand *),
122   MagickWandGenesis(void),
123   MagickWandTerminus(void),
124   *MagickRelinquishMemory(void *),
125   MagickResetIterator(MagickWand *),
126   MagickSetFirstIterator(MagickWand *),
127   MagickSetLastIterator(MagickWand *);
128 
129 #if defined(__cplusplus) || defined(c_plusplus)
130 }
131 #endif
132 
133 #endif
134