]> granicus.if.org Git - imagemagick/blob - magick/MagickCore.h
(no commit message)
[imagemagick] / magick / MagickCore.h
1 /*
2   Copyright 1999-2011 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.
6   obtain a copy of the License at
7   
8     http://www.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   MagickCore Application Programming Interface declarations.
17 */
18
19 #ifndef _MAGICKCORE_CORE_H
20 #define _MAGICKCORE_CORE_H
21
22 #if defined(__cplusplus) || defined(c_plusplus)
23 extern "C" {
24 #endif
25
26 #if !defined(_MAGICKCORE_CONFIG_H)
27 # define _MAGICKCORE_CONFIG_H
28 # if !defined(vms) && !defined(macintosh)
29 #  include "magick/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(_magickcore_restrict) && !defined(restrict)
40 # define restrict  _magickcore_restrict
41 #endif
42 # if defined(__cplusplus) || defined(c_plusplus)
43 #  undef inline
44 # endif
45 #endif
46
47 #include <stdio.h>
48 #include <stdarg.h>
49 #include <stdlib.h>
50 #include <sys/types.h>
51
52 #if defined(WIN32) || defined(WIN64)
53 #  define MAGICKCORE_WINDOWS_SUPPORT
54 #else
55 #  define MAGICKCORE_POSIX_SUPPORT
56 #endif 
57
58 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(__CYGWIN__) && !defined(__MINGW32__)
59 # if defined(_MT) && defined(_DLL) && !defined(_MAGICKDLL_) && !defined(_LIB) && !defined(MAGICK_STATIC_LINK)
60 #  define _MAGICKDLL_
61 # endif
62 # if defined(_MAGICKDLL_)
63 #  if defined(_VISUALC_)
64 #   pragma warning( disable: 4273 )  /* Disable the dll linkage warnings */
65 #  endif
66 #  if !defined(_MAGICKLIB_)
67 #   define MagickExport  __declspec(dllimport)
68 #   if defined(_VISUALC_)
69 #    pragma message( "Magick lib DLL import interface" )
70 #   endif
71 #  else
72 #   define MagickExport  __declspec(dllexport)
73 #   if defined(_VISUALC_)
74 #    pragma message( "Magick lib DLL export interface" )
75 #   endif
76 #  endif
77 # else
78 #  define MagickExport
79 #  if defined(_VISUALC_)
80 #   pragma message( "Magick lib static interface" )
81 #  endif
82 # endif
83
84 # if defined(_DLL) && !defined(_LIB)
85 #  define ModuleExport  __declspec(dllexport)
86 #  if defined(_VISUALC_)
87 #   pragma message( "Magick module DLL export interface" )
88 #  endif
89 # else
90 #  define ModuleExport
91 #  if defined(_VISUALC_)
92 #   pragma message( "Magick module static interface" )
93 #  endif
94
95 # endif
96 # define MagickGlobal __declspec(thread)
97 # if defined(_VISUALC_)
98 #  pragma warning(disable : 4018)
99 #  pragma warning(disable : 4244)
100 #  pragma warning(disable : 4142)
101 #  pragma warning(disable : 4800)
102 #  pragma warning(disable : 4786)
103 #  pragma warning(disable : 4996)
104 # endif
105 #else
106 # define MagickExport
107 # define ModuleExport
108 # define MagickGlobal
109 #endif
110
111 #if !defined(MaxTextExtent)
112 #  define MaxTextExtent  4096
113 #endif
114 #define MagickSignature  0xabacadabUL
115
116 #if !defined(magick_attribute)
117 #  if !defined(__GNUC__)
118 #    define magick_attribute(x)  /* nothing */
119 #  else
120 #    define magick_attribute  __attribute__
121 #  endif
122 #endif
123
124 #if defined(MAGICKCORE_NAMESPACE_PREFIX)
125 # include "magick/methods.h"
126 #endif
127 #include "magick/magick-type.h"
128 #include "magick/accelerate.h"
129 #include "magick/animate.h"
130 #include "magick/annotate.h"
131 #include "magick/artifact.h"
132 #include "magick/attribute.h"
133 #include "magick/blob.h"
134 #include "magick/cache.h"
135 #include "magick/cache-view.h"
136 #include "magick/cipher.h"
137 #include "magick/client.h"
138 #include "magick/coder.h"
139 #include "magick/color.h"
140 #include "magick/colorspace.h"
141 #include "magick/colormap.h"
142 #include "magick/compare.h"
143 #include "magick/composite.h"
144 #include "magick/compress.h"
145 #include "magick/configure.h"
146 #include "magick/constitute.h"
147 #include "magick/decorate.h"
148 #include "magick/delegate.h"
149 #include "magick/deprecate.h"
150 #include "magick/display.h"
151 #include "magick/distort.h"
152 #include "magick/draw.h"
153 #include "magick/effect.h"
154 #include "magick/enhance.h"
155 #include "magick/exception.h"
156 #include "magick/feature.h"
157 #include "magick/fourier.h"
158 #include "magick/fx.h"
159 #include "magick/gem.h"
160 #include "magick/geometry.h"
161 #include "magick/hashmap.h"
162 #include "magick/histogram.h"
163 #include "magick/identify.h"
164 #include "magick/image.h"
165 #include "magick/image-view.h"
166 #include "magick/layer.h"
167 #include "magick/list.h"
168 #include "magick/locale_.h"
169 #include "magick/log.h"
170 #include "magick/magic.h"
171 #include "magick/magick.h"
172 #include "magick/matrix.h"
173 #include "magick/memory_.h"
174 #include "magick/module.h"
175 #include "magick/mime.h"
176 #include "magick/monitor.h"
177 #include "magick/montage.h"
178 #include "magick/morphology.h"
179 #include "magick/option.h"
180 #include "magick/paint.h"
181 #include "magick/pixel.h"
182 #include "magick/policy.h"
183 #include "magick/prepress.h"
184 #include "magick/profile.h"
185 #include "magick/property.h"
186 #include "magick/quantize.h"
187 #include "magick/quantum.h"
188 #include "magick/registry.h"
189 #include "magick/random_.h"
190 #include "magick/resample.h"
191 #include "magick/resize.h"
192 #include "magick/resource_.h"
193 #include "magick/segment.h"
194 #include "magick/shear.h"
195 #include "magick/signature.h"
196 #include "magick/splay-tree.h"
197 #include "magick/stream.h"
198 #include "magick/statistic.h"
199 #include "magick/string_.h"
200 #include "magick/timer.h"
201 #include "magick/token.h"
202 #include "magick/transform.h"
203 #include "magick/threshold.h"
204 #include "magick/type.h"
205 #include "magick/utility.h"
206 #include "magick/version.h"
207 #include "magick/xml-tree.h"
208 #include "magick/xwindow.h"
209
210 #if defined(__cplusplus) || defined(c_plusplus)
211 }
212 #endif
213
214 #endif