2 Copyright 1999-2019 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. You may
6 obtain a copy of the License at
8 https://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 MagickCore magick methods.
18 #ifndef MAGICKCORE_MAGICK_H
19 #define MAGICKCORE_MAGICK_H
21 #if defined(__cplusplus) || defined(c_plusplus)
26 #include "MagickCore/semaphore.h"
38 CoderAdjoinFlag = 0x0001,
39 CoderBlobSupportFlag = 0x0002,
40 CoderDecoderThreadSupportFlag = 0x0004,
41 CoderEncoderThreadSupportFlag = 0x0008,
42 CoderEndianSupportFlag = 0x0010,
43 CoderRawSupportFlag = 0x0020,
44 CoderSeekableStreamFlag = 0x0040, /* deprecated */
45 CoderStealthFlag = 0x0080,
46 CoderUseExtensionFlag = 0x0100,
47 CoderDecoderSeekableStreamFlag = 0x0200,
48 CoderEncoderSeekableStreamFlag = 0x0400,
53 *DecodeImageHandler(const ImageInfo *,ExceptionInfo *);
55 typedef MagickBooleanType
56 EncodeImageHandler(const ImageInfo *,Image *,ExceptionInfo *);
58 typedef MagickBooleanType
59 IsImageFormatHandler(const unsigned char *,const size_t);
61 typedef struct _MagickInfo
99 extern MagickExport char
100 **GetMagickList(const char *,size_t *,ExceptionInfo *);
102 extern MagickExport const char
103 *GetMagickDescription(const MagickInfo *),
104 *GetMagickMimeType(const MagickInfo *);
106 extern MagickExport DecodeImageHandler
107 *GetImageDecoder(const MagickInfo *) magick_attribute((__pure__));
109 extern MagickExport EncodeImageHandler
110 *GetImageEncoder(const MagickInfo *) magick_attribute((__pure__));
112 extern MagickExport int
113 GetMagickPrecision(void),
114 SetMagickPrecision(const int);
116 extern MagickExport MagickBooleanType
117 GetImageMagick(const unsigned char *,const size_t,char *),
118 GetMagickAdjoin(const MagickInfo *) magick_attribute((__pure__)),
119 GetMagickBlobSupport(const MagickInfo *) magick_attribute((__pure__)),
120 GetMagickDecoderSeekableStream(const MagickInfo *)
121 magick_attribute((__pure__)),
122 GetMagickDecoderThreadSupport(const MagickInfo *)
123 magick_attribute((__pure__)),
124 GetMagickEncoderSeekableStream(const MagickInfo *)
125 magick_attribute((__pure__)),
126 GetMagickEncoderThreadSupport(const MagickInfo *)
127 magick_attribute((__pure__)),
128 GetMagickEndianSupport(const MagickInfo *) magick_attribute((__pure__)),
129 GetMagickRawSupport(const MagickInfo *) magick_attribute((__pure__)),
130 GetMagickStealth(const MagickInfo *) magick_attribute((__pure__)),
131 GetMagickUseExtension(const MagickInfo *) magick_attribute((__pure__)),
132 IsMagickCoreInstantiated(void) magick_attribute((__pure__)),
133 RegisterMagickInfo(MagickInfo *),
134 UnregisterMagickInfo(const char *);
136 extern const MagickExport MagickInfo
137 *GetMagickInfo(const char *,ExceptionInfo *),
138 **GetMagickInfoList(const char *,size_t *,ExceptionInfo *);
140 extern MagickExport MagickInfo
141 *AcquireMagickInfo(const char *, const char *, const char *);
143 extern MagickExport void
144 MagickCoreGenesis(const char *,const MagickBooleanType),
145 MagickCoreTerminus(void);
147 #if defined(__cplusplus) || defined(c_plusplus)