• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2   Copyright 1999-2020 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 <stdint.h>
63 #include <math.h>
64 #include <sys/types.h>
65 #include <time.h>
66 
67 #if defined(WIN32) || defined(WIN64)
68 #  define MAGICKWAND_WINDOWS_SUPPORT
69 #else
70 #  define MAGICKWAND_POSIX_SUPPORT
71 #endif
72 
73 typedef struct _MagickWand
74   MagickWand;
75 
76 #include "MagickWand/method-attribute.h"
77 #include "MagickCore/MagickCore.h"
78 #include "MagickWand/animate.h"
79 #include "MagickWand/compare.h"
80 #include "MagickWand/composite.h"
81 #include "MagickWand/conjure.h"
82 #include "MagickWand/convert.h"
83 #include "MagickWand/deprecate.h"
84 #include "MagickWand/display.h"
85 #include "MagickWand/drawing-wand.h"
86 #include "MagickWand/identify.h"
87 #include "MagickWand/import.h"
88 #include "MagickWand/wandcli.h"
89 #include "MagickWand/operation.h"
90 #include "MagickWand/magick-cli.h"
91 #include "MagickWand/magick-property.h"
92 #include "MagickWand/magick-image.h"
93 #include "MagickWand/mogrify.h"
94 #include "MagickWand/montage.h"
95 #include "MagickWand/pixel-iterator.h"
96 #include "MagickWand/pixel-wand.h"
97 #include "MagickWand/stream.h"
98 #include "MagickWand/wand-view.h"
99 
100 extern WandExport char
101   *MagickGetException(const MagickWand *,ExceptionType *);
102 
103 extern WandExport ExceptionType
104   MagickGetExceptionType(const MagickWand *);
105 
106 extern WandExport MagickBooleanType
107   IsMagickWand(const MagickWand *),
108   IsMagickWandInstantiated(void),
109   MagickClearException(MagickWand *),
110   MagickSetIteratorIndex(MagickWand *,const ssize_t);
111 
112 extern WandExport MagickWand
113   *CloneMagickWand(const MagickWand *),
114   *DestroyMagickWand(MagickWand *),
115   *NewMagickWand(void),
116   *NewMagickWandFromImage(const Image *);
117 
118 extern WandExport ssize_t
119   MagickGetIteratorIndex(MagickWand *);
120 
121 extern WandExport void
122   ClearMagickWand(MagickWand *),
123   MagickWandGenesis(void),
124   MagickWandTerminus(void),
125   *MagickRelinquishMemory(void *),
126   MagickResetIterator(MagickWand *),
127   MagickSetFirstIterator(MagickWand *),
128   MagickSetLastIterator(MagickWand *);
129 
130 #if defined(__cplusplus) || defined(c_plusplus)
131 }
132 #endif
133 
134 #endif
135