MagickCore  7.0.9
Convert, Edit, Or Compose Bitmap Images
magick.h
Go to the documentation of this file.
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  MagickCore magick methods.
17 */
18 #ifndef MAGICKCORE_MAGICK_H
19 #define MAGICKCORE_MAGICK_H
20 
21 #if defined(__cplusplus) || defined(c_plusplus)
22 extern "C" {
23 #endif
24 
25 #include <stdarg.h>
26 #include "MagickCore/semaphore.h"
27 
28 #if defined(__cplusplus) || defined(c_plusplus)
29 # define magick_module _module /* reserved word in C++(20) */
30 #else
31 # define magick_module module
32 #endif
33 
34 typedef enum
35 {
40 
41 typedef enum
42 {
43  CoderNoFlag = 0x0000,
44  CoderAdjoinFlag = 0x0001,
50  CoderSeekableStreamFlag = 0x0040, /* deprecated */
51  CoderStealthFlag = 0x0080,
55 
57 
58 typedef Image
60 
61 typedef MagickBooleanType
63 
64 typedef MagickBooleanType
65  IsImageFormatHandler(const unsigned char *,const size_t);
66 
67 typedef struct _MagickInfo
68 {
69  char
70  *name,
71  *description,
72  *version,
73  *mime_type,
74  *note,
76 
79 
82 
83  ImageInfo
85 
88 
91 
94 
97 
98  size_t
100 
101  void
103 } MagickInfo;
104 
105 extern MagickExport char
106  **GetMagickList(const char *,size_t *,ExceptionInfo *);
107 
108 extern MagickExport const char
110  *GetMagickMimeType(const MagickInfo *),
112  *GetMagickName(const MagickInfo *);
113 
115  *GetImageDecoder(const MagickInfo *) magick_attribute((__pure__));
116 
118  *GetImageEncoder(const MagickInfo *) magick_attribute((__pure__));
119 
120 extern MagickExport int
121  GetMagickPrecision(void),
122  SetMagickPrecision(const int);
123 
125  GetImageMagick(const unsigned char *,const size_t,char *),
126  GetMagickAdjoin(const MagickInfo *) magick_attribute((__pure__)),
127  GetMagickBlobSupport(const MagickInfo *) magick_attribute((__pure__)),
129  magick_attribute((__pure__)),
131  magick_attribute((__pure__)),
133  magick_attribute((__pure__)),
135  magick_attribute((__pure__)),
137  GetMagickRawSupport(const MagickInfo *) magick_attribute((__pure__)),
138  GetMagickStealth(const MagickInfo *) magick_attribute((__pure__)),
140  IsMagickCoreInstantiated(void) magick_attribute((__pure__)),
142  UnregisterMagickInfo(const char *);
143 
144 extern const MagickExport MagickInfo
145  *GetMagickInfo(const char *,ExceptionInfo *),
146  **GetMagickInfoList(const char *,size_t *,ExceptionInfo *);
147 
148 extern MagickExport MagickInfo
149  *AcquireMagickInfo(const char *, const char *, const char *);
150 
151 extern MagickExport void
152  MagickCoreGenesis(const char *,const MagickBooleanType),
153  MagickCoreTerminus(void);
154 
155 #if defined(__cplusplus) || defined(c_plusplus)
156 }
157 #endif
158 
159 #endif
MagickExport MagickBooleanType GetMagickUseExtension(const MagickInfo *magick_info)
Definition: magick.c:1034
struct _MagickInfo MagickInfo
Definition: magick.h:37
Definition: magick.h:43
MagickInfoFlag
Definition: magick.h:41
Definition: magick.h:48
Definition: magick.h:52
MagickExport void MagickCoreTerminus(void)
Definition: magick.c:1602
Definition: exception.h:101
Definition: magick.h:38
MagickExport MagickBooleanType GetMagickEncoderThreadSupport(const MagickInfo *magick_info)
Definition: magick.c:542
char * note
Definition: magick.h:70
Definition: magick.h:67
MagickExport const char * GetMagickDescription(const MagickInfo *magick_info)
Definition: magick.c:477
char * magick_module
Definition: magick.h:70
Definition: image.h:375
char * version
Definition: magick.h:70
char * name
Definition: magick.h:70
EncodeImageHandler * encoder
Definition: magick.h:81
Definition: magick.h:50
Definition: magick.h:53
MagickBooleanType EncodeImageHandler(const ImageInfo *, Image *, ExceptionInfo *)
Definition: magick.h:62
MagickExport const char * GetMagickName(const MagickInfo *magick_info)
Definition: magick.c:915
Definition: magick.h:46
Definition: magick.h:44
MagickExport void MagickCoreGenesis(const char *path, const MagickBooleanType establish_signal_handlers)
Definition: magick.c:1466
MagickFormatType format_type
Definition: magick.h:90
size_t signature
Definition: magick.h:99
Definition: image.h:151
#define magick_attribute(x)
Definition: method-attribute.h:104
MagickExport MagickBooleanType GetMagickRawSupport(const MagickInfo *magick_info)
Definition: magick.c:969
MagickExport MagickBooleanType GetMagickDecoderSeekableStream(const MagickInfo *magick_info)
Definition: magick.c:412
SemaphoreInfo * semaphore
Definition: magick.h:96
MagickBooleanType
Definition: magick-type.h:169
unsigned int MagickStatusType
Definition: magick-type.h:125
Definition: magick.h:49
DecodeImageHandler * decoder
Definition: magick.h:78
MagickExport char ** GetMagickList(const char *pattern, size_t *number_formats, ExceptionInfo *exception)
Definition: magick.c:792
MagickExport MagickBooleanType GetImageMagick(const unsigned char *magick, const size_t length, char *format)
Definition: magick.c:289
MagickStatusType flags
Definition: magick.h:93
MagickBooleanType IsImageFormatHandler(const unsigned char *, const size_t)
Definition: magick.h:65
Definition: magick.h:47
MagickExport MagickBooleanType GetMagickBlobSupport(const MagickInfo *magick_info)
Definition: magick.c:379
MagickExport int GetMagickPrecision(void)
Definition: magick.c:941
MagickExport MagickBooleanType GetMagickStealth(const MagickInfo *magick_info)
Definition: magick.c:1001
MagickExport DecodeImageHandler * GetImageDecoder(const MagickInfo *magick_info)
Definition: magick.c:222
MagickExport const MagickInfo * GetMagickInfo(const char *name, ExceptionInfo *exception)
Definition: magick.c:609
IsImageFormatHandler * magick
Definition: magick.h:87
MagickExport MagickBooleanType GetMagickAdjoin(const MagickInfo *magick_info)
Definition: magick.c:349
MagickExport EncodeImageHandler * GetImageEncoder(const MagickInfo *magick_info)
Definition: magick.c:252
MagickExport MagickBooleanType GetMagickEndianSupport(const MagickInfo *magick_info)
Definition: magick.c:574
MagickExport MagickBooleanType GetMagickDecoderThreadSupport(const MagickInfo *magick_info)
Definition: magick.c:446
MagickFormatType
Definition: magick.h:34
MagickExport MagickBooleanType GetMagickEncoderSeekableStream(const MagickInfo *magick_info)
Definition: magick.c:508
Definition: magick.h:45
MagickExport MagickBooleanType UnregisterMagickInfo(const char *name)
Definition: magick.c:1796
void * client_data
Definition: magick.h:102
MagickExport const MagickInfo ** GetMagickInfoList(const char *pattern, size_t *number_formats, ExceptionInfo *exception)
Definition: magick.c:699
MagickExport const char * GetMagickMimeType(const MagickInfo *magick_info)
Definition: magick.c:857
char * description
Definition: magick.h:70
MagickExport MagickBooleanType IsMagickCoreInstantiated(void)
Definition: magick.c:1280
ImageInfo * image_info
Definition: magick.h:84
Definition: magick.h:51
Definition: magick.h:54
MagickExport MagickInfo * AcquireMagickInfo(const char *magick_module, const char *name, const char *description)
Definition: magick.c:178
MagickExport int SetMagickPrecision(const int precision)
Definition: magick.c:1744
Definition: magick.h:36
#define MagickExport
Definition: method-attribute.h:80
MagickExport MagickBooleanType RegisterMagickInfo(MagickInfo *magick_info)
Definition: magick.c:1672
MagickExport const char * GetMagickModuleName(const MagickInfo *magick_info)
Definition: magick.c:886
Definition: semaphore.c:60
char * mime_type
Definition: magick.h:70
Image * DecodeImageHandler(const ImageInfo *, ExceptionInfo *)
Definition: magick.h:59