MagickCore  7.0.10
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:1035
struct _MagickInfo MagickInfo
MagickInfoFlag
Definition: magick.h:41
MagickExport void MagickCoreTerminus(void)
Definition: magick.c:1609
MagickExport MagickBooleanType GetMagickEncoderThreadSupport(const MagickInfo *magick_info)
Definition: magick.c:543
char * note
Definition: magick.h:70
MagickExport const char * GetMagickDescription(const MagickInfo *magick_info)
Definition: magick.c:478
char * magick_module
Definition: magick.h:70
char * version
Definition: magick.h:70
char * name
Definition: magick.h:70
EncodeImageHandler * encoder
Definition: magick.h:81
MagickBooleanType EncodeImageHandler(const ImageInfo *, Image *, ExceptionInfo *)
Definition: magick.h:62
MagickExport const char * GetMagickName(const MagickInfo *magick_info)
Definition: magick.c:916
MagickExport void MagickCoreGenesis(const char *path, const MagickBooleanType establish_signal_handlers)
Definition: magick.c:1467
MagickFormatType format_type
Definition: magick.h:90
size_t signature
Definition: magick.h:99
Definition: image.h:151
#define magick_attribute(x)
MagickExport MagickBooleanType GetMagickRawSupport(const MagickInfo *magick_info)
Definition: magick.c:970
MagickExport MagickBooleanType GetMagickDecoderSeekableStream(const MagickInfo *magick_info)
Definition: magick.c:413
SemaphoreInfo * semaphore
Definition: magick.h:96
MagickBooleanType
Definition: magick-type.h:169
unsigned int MagickStatusType
Definition: magick-type.h:125
DecodeImageHandler * decoder
Definition: magick.h:78
MagickExport char ** GetMagickList(const char *pattern, size_t *number_formats, ExceptionInfo *exception)
Definition: magick.c:793
MagickExport MagickBooleanType GetImageMagick(const unsigned char *magick, const size_t length, char *format)
Definition: magick.c:290
MagickStatusType flags
Definition: magick.h:93
MagickBooleanType IsImageFormatHandler(const unsigned char *, const size_t)
Definition: magick.h:65
MagickExport MagickBooleanType GetMagickBlobSupport(const MagickInfo *magick_info)
Definition: magick.c:380
MagickExport int GetMagickPrecision(void)
Definition: magick.c:942
MagickExport MagickBooleanType GetMagickStealth(const MagickInfo *magick_info)
Definition: magick.c:1002
MagickExport DecodeImageHandler * GetImageDecoder(const MagickInfo *magick_info)
Definition: magick.c:223
MagickExport const MagickInfo * GetMagickInfo(const char *name, ExceptionInfo *exception)
Definition: magick.c:610
IsImageFormatHandler * magick
Definition: magick.h:87
MagickExport MagickBooleanType GetMagickAdjoin(const MagickInfo *magick_info)
Definition: magick.c:350
MagickExport EncodeImageHandler * GetImageEncoder(const MagickInfo *magick_info)
Definition: magick.c:253
MagickExport MagickBooleanType GetMagickEndianSupport(const MagickInfo *magick_info)
Definition: magick.c:575
MagickExport MagickBooleanType GetMagickDecoderThreadSupport(const MagickInfo *magick_info)
Definition: magick.c:447
MagickFormatType
Definition: magick.h:34
MagickExport MagickBooleanType GetMagickEncoderSeekableStream(const MagickInfo *magick_info)
Definition: magick.c:509
MagickExport MagickBooleanType UnregisterMagickInfo(const char *name)
Definition: magick.c:1803
void * client_data
Definition: magick.h:102
MagickExport const MagickInfo ** GetMagickInfoList(const char *pattern, size_t *number_formats, ExceptionInfo *exception)
Definition: magick.c:700
MagickExport const char * GetMagickMimeType(const MagickInfo *magick_info)
Definition: magick.c:858
char * description
Definition: magick.h:70
MagickExport MagickBooleanType IsMagickCoreInstantiated(void)
Definition: magick.c:1281
ImageInfo * image_info
Definition: magick.h:84
MagickExport MagickInfo * AcquireMagickInfo(const char *magick_module, const char *name, const char *description)
Definition: magick.c:179
MagickExport int SetMagickPrecision(const int precision)
Definition: magick.c:1751
#define MagickExport
MagickExport MagickBooleanType RegisterMagickInfo(MagickInfo *magick_info)
Definition: magick.c:1679
MagickExport const char * GetMagickModuleName(const MagickInfo *magick_info)
Definition: magick.c:887
char * mime_type
Definition: magick.h:70
Image * DecodeImageHandler(const ImageInfo *, ExceptionInfo *)
Definition: magick.h:59