www/api/Magick++/Include_8h_source.html
| Magick++ 7.1.0 |
Include.h
Go to the documentation of this file.
1 // This may look like C code, but it is really -*- C++ -*-
2 //
3 // Copyright Bob Friesenhahn, 1999, 2000, 2001, 2002
4 //
5 // Copyright @ 2013 ImageMagick Studio LLC, a non-profit organization
6 // dedicated to making software imaging solutions freely available.
7 //
8 // Inclusion of ImageMagick headers (with namespace magic)
9
10 #ifndef Magick_Include_header
11 #define Magick_Include_header
12
13 #if !defined(_MAGICK_CONFIG_H)
14 # define _MAGICK_CONFIG_H
15 # if !defined(vms)
16 # include "MagickCore/magick-config.h"
17 # else
18 # include "magick-config.h"
19 # endif
20 # undef inline // Remove possible definition from config.h
21 # undef class
22 #endif
23
24 // Needed for stdio FILE
25 #include <stdio.h>
26 #include <stdarg.h>
27 #include <stdlib.h>
28 #include <time.h>
29 #include <math.h>
30 #include <sys/types.h>
31
32 #include <errno.h>
33 #include <stdint.h>
34
35 #if defined(__BORLANDC__)
36 # include <vcl.h> /* Borland C++ Builder 4.0 requirement */
37 #endif // defined(__BORLANDC__)
38
39 //
40 // Include ImageMagick headers into namespace "MagickCore". If
41 // MAGICKCORE_IMPLEMENTATION is defined, include ImageMagick development
42 // headers. This scheme minimizes the possibility of conflict with
43 // user code.
44 //
45 namespace MagickCore
46 {
47 #include <MagickCore/MagickCore.h>
48 #include <MagickWand/MagickWand.h>
49 #undef inline // Remove possible definition from config.h
50
51 #undef class
52 }
53
54 //
55 // Provide appropriate DLL imports/exports for Visual C++,
56 // Borland C++Builder and MinGW builds.
57 //
58 #if defined(WIN32) && !defined(__CYGWIN__) && !defined(__MINGW32__)
59 # define MagickCplusPlusDLLSupported
60 #endif
61 #if defined(MagickCplusPlusDLLSupported)
62 # if defined(_MT) && defined(_DLL) && !defined(_LIB) && !defined(STATIC_MAGICK)
63 //
64 // In a native Windows build, the following defines are used:
65 //
66 // _MT = Multithreaded
67 // _DLL = Using code is part of a DLL
68 // _LIB = Using code is being built as a library.
69 // _MAGICKMOD_ = Build uses loadable modules (Magick++ does not care about this)
70 //
71 // In the case where ImageMagick is built as a static library but the
72 // using code is dynamic, STATIC_MAGICK may be defined in the project to
73 // override triggering dynamic library behavior.
74 //
75 # if defined(_VISUALC_)
76 # define MagickDLLExplicitTemplate
77 # pragma warning( disable: 4275 )
78 # pragma warning( disable: 4273 ) /* Disable the stupid dll linkage warnings */
79 # pragma warning( disable: 4251 )
80 # endif
81 # if !defined(MAGICKCORE_IMPLEMENTATION)
82 # if defined(__GNUC__)
83 # define MagickPPExport __attribute__ ((dllimport))
84 # else
85 # define MagickPPExport __declspec(dllimport)
86 # endif
87 # define MagickPPPrivate extern __declspec(dllimport)
88 # else
89 # if defined(__BORLANDC__) || defined(__MINGW32__)
90 # define MagickPPExport __declspec(dllexport)
91 # define MagickPPPrivate __declspec(dllexport)
92 # else
93 # if defined(__GNUC__)
94 # define MagickPPExport __attribute__ ((dllexport))
95 # else
96 # define MagickPPExport __declspec(dllexport)
97 # endif
98 # define MagickPPPrivate extern __declspec(dllexport)
99 # endif
100 # endif
101 # else
102 # define MagickPPExport
103 # define MagickPPPrivate
104 # if defined(_MSC_VER) && defined(STATIC_MAGICK) && !defined(NOAUTOLINK_MAGICK)
105 # if defined(_DEBUG)
106 # if defined(MAGICKCORE_BZLIB_DELEGATE)
107 # pragma comment(lib, "CORE_DB_bzlib_.lib")
108 # endif
109 # if defined(MAGICKCORE_CAIRO_DELEGATE)
110 # pragma comment(lib, "CORE_DB_cairo_.lib")
111 # endif
112 # if defined(MAGICKCORE_OPENEXR_DELEGATE)
113 # pragma comment(lib, "CORE_DB_exr_.lib")
114 # endif
115 # if defined(MAGICKCORE_FLIF_DELEGATE)
116 # pragma comment(lib, "CORE_DB_flif_.lib")
117 # endif
118 # if defined(MAGICKCORE_FREETYPE_DELEGATE)
119 # pragma comment(lib, "CORE_DB_freetype_.lib")
120 # endif
121 # if defined(MAGICKCORE_JBIG_DELEGATE)
122 # pragma comment(lib, "CORE_DB_jbig_.lib")
123 # endif
124 # if defined(MAGICKCORE_JP2_DELEGATE)
125 # pragma comment(lib, "CORE_DB_jp2_.lib")
126 # endif
127 # if defined(MAGICKCORE_JPEG_DELEGATE)
128 # pragma comment(lib, "CORE_DB_jpeg-turbo_.lib")
129 # endif
130 # if defined(MAGICKCORE_JXL_DELEGATE)
131 # pragma comment(lib, "CORE_DB_highway_.lib")
132 # pragma comment(lib, "CORE_DB_brotli_.lib")
133 # pragma comment(lib, "CORE_DB_jpeg-xl_.lib")
134 # endif
135 # if defined(MAGICKCORE_LCMS_DELEGATE)
136 # pragma comment(lib, "CORE_DB_lcms_.lib")
137 # endif
138 # if defined(MAGICKCORE_HEIC_DELEGATE)
139 # pragma comment(lib, "CORE_DB_aom_.lib")
140 # pragma comment(lib, "CORE_DB_de265_.lib")
141 # pragma comment(lib, "CORE_DB_heif_.lib")
142 # endif
143 # if defined(MAGICKCORE_LZMA_DELEGATE)
144 # pragma comment(lib, "CORE_DB_lzma_.lib")
145 # endif
146 # if defined(MAGICKCORE_RAW_R_DELEGATE)
147 # pragma comment(lib, "CORE_DB_raw_.lib")
148 # endif
149 # if defined(MAGICKCORE_RSVG_DELEGATE)
150 # pragma comment(lib, "CORE_DB_croco_.lib")
151 # pragma comment(lib, "CORE_DB_rsvg_.lib")
152 # endif
153 # if defined(MAGICKCORE_XML_DELEGATE)
154 # pragma comment(lib, "CORE_DB_xml_.lib")
155 # endif
156 # if defined(MAGICKCORE_ZIP_DELEGATE)
157 # pragma comment(lib, "CORE_DB_zip_.lib")
158 # endif
159 # if defined(MAGICKCORE_LQR_DELEGATE)
160 # pragma comment(lib, "CORE_DB_ffi_.lib")
161 # pragma comment(lib, "CORE_DB_glib_.lib")
162 # pragma comment(lib, "CORE_DB_lqr_.lib")
163 # pragma comment(lib, "winmm.lib")
164 # endif
165 # if defined(MAGICKCORE_LIBOPENJP2_DELEGATE)
166 # pragma comment(lib, "CORE_DB_openjpeg_.lib")
167 # endif
168 # if defined(MAGICKCORE_PANGOCAIRO_DELEGATE)
169 # pragma comment(lib, "CORE_DB_fribidi_.lib")
170 # pragma comment(lib, "CORE_DB_harfbuzz_.lib")
171 # pragma comment(lib, "CORE_DB_pango_.lib")
172 # pragma comment(lib, "CORE_DB_pixman_.lib")
173 # endif
174 # if defined(MAGICKCORE_PNG_DELEGATE)
175 # pragma comment(lib, "CORE_DB_png_.lib")
176 # endif
177 # if defined(MAGICKCORE_RAQM_DELEGATE)
178 # pragma comment(lib, "CORE_DB_raqm_.lib")
179 # endif
180 # if defined(MAGICKCORE_TIFF_DELEGATE)
181 # pragma comment(lib, "CORE_DB_tiff_.lib")
182 # endif
183 # if defined(MAGICKCORE_WEBP_DELEGATE)
184 # pragma comment(lib, "CORE_DB_webp_.lib")
185 # endif
186 # if defined(MAGICKCORE_ZLIB_DELEGATE)
187 # pragma comment(lib, "CORE_DB_zlib_.lib")
188 # endif
189 # pragma comment(lib, "CORE_DB_coders_.lib")
190 # pragma comment(lib, "CORE_DB_filters_.lib")
191 # pragma comment(lib, "CORE_DB_Magick++_.lib")
192 # pragma comment(lib, "CORE_DB_MagickCore_.lib")
193 # pragma comment(lib, "CORE_DB_MagickWand_.lib")
194 # else
195 # if defined(MAGICKCORE_BZLIB_DELEGATE)
196 # pragma comment(lib, "CORE_RL_bzlib_.lib")
197 # endif
198 # if defined(MAGICKCORE_CAIRO_DELEGATE)
199 # pragma comment(lib, "CORE_RL_cairo_.lib")
200 # endif
201 # if defined(MAGICKCORE_OPENEXR_DELEGATE)
202 # pragma comment(lib, "CORE_RL_exr_.lib")
203 # endif
204 # if defined(MAGICKCORE_FLIF_DELEGATE)
205 # pragma comment(lib, "CORE_RL_flif_.lib")
206 # endif
207 # if defined(MAGICKCORE_FREETYPE_DELEGATE)
208 # pragma comment(lib, "CORE_RL_freetype_.lib")
209 # endif
210 # if defined(MAGICKCORE_JBIG_DELEGATE)
211 # pragma comment(lib, "CORE_RL_jbig_.lib")
212 # endif
213 # if defined(MAGICKCORE_JP2_DELEGATE)
214 # pragma comment(lib, "CORE_RL_jp2_.lib")
215 # endif
216 # if defined(MAGICKCORE_JPEG_DELEGATE)
217 # pragma comment(lib, "CORE_RL_jpeg-turbo_.lib")
218 # endif
219 # if defined(MAGICKCORE_JXL_DELEGATE)
220 # pragma comment(lib, "CORE_RL_highway_.lib")
221 # pragma comment(lib, "CORE_RL_brotli_.lib")
222 # pragma comment(lib, "CORE_RL_jpeg-xl_.lib")
223 # endif
224 # if defined(MAGICKCORE_LCMS_DELEGATE)
225 # pragma comment(lib, "CORE_RL_lcms_.lib")
226 # endif
227 # if defined(MAGICKCORE_HEIC_DELEGATE)
228 # pragma comment(lib, "CORE_RL_aom_.lib")
229 # pragma comment(lib, "CORE_RL_de265_.lib")
230 # pragma comment(lib, "CORE_RL_heif_.lib")
231 # endif
232 # if defined(MAGICKCORE_LZMA_DELEGATE)
233 # pragma comment(lib, "CORE_RL_lzma_.lib")
234 # endif
235 # if defined(MAGICKCORE_RAW_R_DELEGATE)
236 # pragma comment(lib, "CORE_RL_raw_.lib")
237 # endif
238 # if defined(MAGICKCORE_RSVG_DELEGATE)
239 # pragma comment(lib, "CORE_RL_croco_.lib")
240 # pragma comment(lib, "CORE_RL_rsvg_.lib")
241 # endif
242 # if defined(MAGICKCORE_XML_DELEGATE)
243 # pragma comment(lib, "CORE_RL_xml_.lib")
244 # endif
245 # if defined(MAGICKCORE_ZIP_DELEGATE)
246 # pragma comment(lib, "CORE_RL_zip_.lib")
247 # endif
248 # if defined(MAGICKCORE_LQR_DELEGATE)
249 # pragma comment(lib, "CORE_RL_ffi_.lib")
250 # pragma comment(lib, "CORE_RL_glib_.lib")
251 # pragma comment(lib, "CORE_RL_lqr_.lib")
252 # pragma comment(lib, "winmm.lib")
253 # endif
254 # if defined(MAGICKCORE_LIBOPENJP2_DELEGATE)
255 # pragma comment(lib, "CORE_RL_openjpeg_.lib")
256 # endif
257 # if defined(MAGICKCORE_PANGOCAIRO_DELEGATE)
258 # pragma comment(lib, "CORE_RL_fribidi_.lib")
259 # pragma comment(lib, "CORE_RL_harfbuzz_.lib")
260 # pragma comment(lib, "CORE_RL_pango_.lib")
261 # pragma comment(lib, "CORE_RL_pixman_.lib")
262 # endif
263 # if defined(MAGICKCORE_PNG_DELEGATE)
264 # pragma comment(lib, "CORE_RL_png_.lib")
265 # endif
266 # if defined(MAGICKCORE_RAQM_DELEGATE)
267 # pragma comment(lib, "CORE_RL_raqm_.lib")
268 # endif
269 # if defined(MAGICKCORE_TIFF_DELEGATE)
270 # pragma comment(lib, "CORE_RL_tiff_.lib")
271 # endif
272 # if defined(MAGICKCORE_WEBP_DELEGATE)
273 # pragma comment(lib, "CORE_RL_webp_.lib")
274 # endif
275 # if defined(MAGICKCORE_ZLIB_DELEGATE)
276 # pragma comment(lib, "CORE_RL_zlib_.lib")
277 # endif
278 # pragma comment(lib, "CORE_RL_coders_.lib")
279 # pragma comment(lib, "CORE_RL_filters_.lib")
280 # pragma comment(lib, "CORE_RL_Magick++_.lib")
281 # pragma comment(lib, "CORE_RL_MagickCore_.lib")
282 # pragma comment(lib, "CORE_RL_MagickWand_.lib")
283 # endif
284 # if defined(_WIN32_WCE)
285 # pragma comment(lib, "wsock32.lib")
286 # else
287 # pragma comment(lib, "ws2_32.lib")
288 # endif
289 # pragma comment(lib, "urlmon.lib")
290 # endif
291 # endif
292 #else
293 # if __GNUC__ >= 4
294 # define MagickPPExport __attribute__ ((visibility ("default")))
295 # define MagickPPPrivate __attribute__ ((visibility ("hidden")))
296 # else
297 # define MagickPPExport
298 # define MagickPPPrivate
299 # endif
300 #endif
301
302 #if (defined(WIN32) || defined(WIN64)) && defined(_VISUALC_)
303 # pragma warning(disable : 4996) /* function deprecation warnings */
304 #endif
305
306 //
307 // Import ImageMagick symbols and types which are used as part of the
308 // Magick++ API definition into namespace "Magick".
309 //
310 namespace Magick
311 {
312// The datatype for an RGB component
313using MagickCore::Quantum;
314using MagickCore::MagickRealType;
315using MagickCore::MagickSizeType;
316using MagickCore::MagickStatusType;
317
318// Structures
319using MagickCore::AffineMatrix;
320using MagickCore::CacheView;
321using MagickCore::CCObjectInfo;
322using MagickCore::DrawInfo;
323using MagickCore::DrawingWand;
324using MagickCore::ExceptionInfo;
325using MagickCore::FrameInfo;
326using MagickCore::ImageInfo;
327using MagickCore::KernelInfo;
328using MagickCore::LinkedListInfo;
329using MagickCore::MagickInfo;
330using MagickCore::MagickWand;
331using MagickCore::MontageInfo;
332using MagickCore::OffsetInfo;
333using MagickCore::PixelInfo;
334using MagickCore::PixelWand;
335using MagickCore::PointInfo;
336using MagickCore::ProfileInfo;
337using MagickCore::QuantizeInfo;
338using MagickCore::QuantumInfo;
339using MagickCore::RectangleInfo;
340using MagickCore::StringInfo;
341
342// Alignment types.
343using MagickCore::AlignType;
344using MagickCore::UndefinedAlign;
345using MagickCore::LeftAlign;
346using MagickCore::CenterAlign;
347using MagickCore::RightAlign;
348
349// Alpha channel options
350using MagickCore::AlphaChannelOption;
351using MagickCore::UndefinedAlphaChannel;
352using MagickCore::ActivateAlphaChannel;
353using MagickCore::AssociateAlphaChannel;
354using MagickCore::BackgroundAlphaChannel;
355using MagickCore::CopyAlphaChannel;
356using MagickCore::DeactivateAlphaChannel;
357using MagickCore::DiscreteAlphaChannel;
358using MagickCore::DisassociateAlphaChannel;
359using MagickCore::ExtractAlphaChannel;
360using MagickCore::OffAlphaChannel;
361using MagickCore::OnAlphaChannel;
362using MagickCore::OpaqueAlphaChannel;
363using MagickCore::RemoveAlphaChannel;
364using MagickCore::SetAlphaChannel;
365using MagickCore::ShapeAlphaChannel;
366using MagickCore::TransparentAlphaChannel;
367
368// Auto threshold methods
369using MagickCore::AutoThresholdMethod;
370using MagickCore::UndefinedThresholdMethod;
371using MagickCore::KapurThresholdMethod;
372using MagickCore::OTSUThresholdMethod;
373using MagickCore::TriangleThresholdMethod;
374
375// Channel types
376using MagickCore::ChannelType;
377using MagickCore::UndefinedChannel;
378using MagickCore::RedChannel;
379using MagickCore::GrayChannel;
380using MagickCore::CyanChannel;
381using MagickCore::GreenChannel;
382using MagickCore::MagentaChannel;
383using MagickCore::BlueChannel;
384using MagickCore::YellowChannel;
385using MagickCore::BlackChannel;
386using MagickCore::AlphaChannel;
387using MagickCore::OpacityChannel;
388using MagickCore::IndexChannel;
389using MagickCore::ReadMaskChannel;
390using MagickCore::WriteMaskChannel;
391using MagickCore::MetaChannel;
392using MagickCore::CompositeChannels;
393using MagickCore::AllChannels;
394using MagickCore::TrueAlphaChannel;
395using MagickCore::RGBChannels;
396using MagickCore::GrayChannels;
397using MagickCore::SyncChannels;
398using MagickCore::DefaultChannels;
399
400// Image class types
401using MagickCore::ClassType;
402using MagickCore::UndefinedClass;
403using MagickCore::DirectClass;
404using MagickCore::PseudoClass;
405
406// Clip path units
407using MagickCore::ClipPathUnits;
408using MagickCore::UndefinedPathUnits;
409using MagickCore::UserSpace;
410using MagickCore::UserSpaceOnUse;
411using MagickCore::ObjectBoundingBox;
412
413// Color-space types
414using MagickCore::ColorspaceType;
415using MagickCore::UndefinedColorspace;
416using MagickCore::CMYColorspace;
417using MagickCore::CMYKColorspace;
418using MagickCore::GRAYColorspace;
419using MagickCore::HCLColorspace;
420using MagickCore::HCLpColorspace;
421using MagickCore::HSBColorspace;
422using MagickCore::HSIColorspace;
423using MagickCore::HSLColorspace;
424using MagickCore::HSVColorspace;
425using MagickCore::HWBColorspace;
426using MagickCore::LabColorspace;
427using MagickCore::LCHColorspace;
428using MagickCore::LCHabColorspace;
429using MagickCore::LCHuvColorspace;
430using MagickCore::LogColorspace;
431using MagickCore::LMSColorspace;
432using MagickCore::LuvColorspace;
433using MagickCore::OHTAColorspace;
434using MagickCore::Rec601YCbCrColorspace;
435using MagickCore::Rec709YCbCrColorspace;
436using MagickCore::RGBColorspace;
437using MagickCore::scRGBColorspace;
438using MagickCore::sRGBColorspace;
439using MagickCore::TransparentColorspace;
440using MagickCore::xyYColorspace;
441using MagickCore::XYZColorspace;
442using MagickCore::YCbCrColorspace;
443using MagickCore::YCCColorspace;
444using MagickCore::YDbDrColorspace;
445using MagickCore::YIQColorspace;
446using MagickCore::YPbPrColorspace;
447using MagickCore::YUVColorspace;
448using MagickCore::LinearGRAYColorspace;
449
450// Command options
451using MagickCore::CommandOption;
452using MagickCore::MagickDirectionOptions;
453using MagickCore::MagickGravityOptions;
454using MagickCore::MagickKernelOptions;
455using MagickCore::MagickStyleOptions;
456
457// Compliance types
458using MagickCore::ComplianceType;
459using MagickCore::AllCompliance;
460
461// Composition operations
462using MagickCore::CompositeOperator;
463using MagickCore::AlphaCompositeOp;
464using MagickCore::AtopCompositeOp;
465using MagickCore::BlendCompositeOp;
466using MagickCore::BlurCompositeOp;
467using MagickCore::BumpmapCompositeOp;
468using MagickCore::ChangeMaskCompositeOp;
469using MagickCore::ClearCompositeOp;
470using MagickCore::ColorBurnCompositeOp;
471using MagickCore::ColorDodgeCompositeOp;
472using MagickCore::ColorizeCompositeOp;
473using MagickCore::CopyBlackCompositeOp;
474using MagickCore::CopyBlueCompositeOp;
475using MagickCore::CopyCompositeOp;
476using MagickCore::CopyCyanCompositeOp;
477using MagickCore::CopyGreenCompositeOp;
478using MagickCore::CopyMagentaCompositeOp;
479using MagickCore::CopyAlphaCompositeOp;
480using MagickCore::CopyRedCompositeOp;
481using MagickCore::CopyYellowCompositeOp;
482using MagickCore::DarkenCompositeOp;
483using MagickCore::DarkenIntensityCompositeOp;
484using MagickCore::DifferenceCompositeOp;
485using MagickCore::DisplaceCompositeOp;
486using MagickCore::DissolveCompositeOp;
487using MagickCore::DistortCompositeOp;
488using MagickCore::DivideDstCompositeOp;
489using MagickCore::DivideSrcCompositeOp;
490using MagickCore::DstAtopCompositeOp;
491using MagickCore::DstCompositeOp;
492using MagickCore::DstInCompositeOp;
493using MagickCore::DstOutCompositeOp;
494using MagickCore::DstOverCompositeOp;
495using MagickCore::ExclusionCompositeOp;
496using MagickCore::HardLightCompositeOp;
497using MagickCore::HardMixCompositeOp;
498using MagickCore::HueCompositeOp;
499using MagickCore::InCompositeOp;
500using MagickCore::IntensityCompositeOp;
501using MagickCore::LightenCompositeOp;
502using MagickCore::LightenIntensityCompositeOp;
503using MagickCore::LinearBurnCompositeOp;
504using MagickCore::LinearDodgeCompositeOp;
505using MagickCore::LinearLightCompositeOp;
506using MagickCore::LuminizeCompositeOp;
507using MagickCore::MathematicsCompositeOp;
508using MagickCore::MinusDstCompositeOp;
509using MagickCore::MinusSrcCompositeOp;
510using MagickCore::ModulateCompositeOp;
511using MagickCore::ModulusAddCompositeOp;
512using MagickCore::ModulusSubtractCompositeOp;
513using MagickCore::MultiplyCompositeOp;
514using MagickCore::NoCompositeOp;
515using MagickCore::OutCompositeOp;
516using MagickCore::OverCompositeOp;
517using MagickCore::OverlayCompositeOp;
518using MagickCore::PegtopLightCompositeOp;
519using MagickCore::PinLightCompositeOp;
520using MagickCore::PlusCompositeOp;
521using MagickCore::ReplaceCompositeOp;
522using MagickCore::SaturateCompositeOp;
523using MagickCore::ScreenCompositeOp;
524using MagickCore::SoftLightCompositeOp;
525using MagickCore::SrcAtopCompositeOp;
526using MagickCore::SrcCompositeOp;
527using MagickCore::SrcInCompositeOp;
528using MagickCore::SrcOutCompositeOp;
529using MagickCore::SrcOverCompositeOp;
530using MagickCore::ThresholdCompositeOp;
531using MagickCore::UndefinedCompositeOp;
532using MagickCore::VividLightCompositeOp;
533using MagickCore::XorCompositeOp;
534
535// Compression algorithms
536using MagickCore::CompressionType;
537using MagickCore::UndefinedCompression;
538using MagickCore::NoCompression;
539using MagickCore::B44ACompression;
540using MagickCore::B44Compression;
541using MagickCore::BZipCompression;
542using MagickCore::DWAACompression;
543using MagickCore::DWABCompression;
544using MagickCore::DXT1Compression;
545using MagickCore::DXT3Compression;
546using MagickCore::DXT5Compression;
547using MagickCore::BC7Compression;
548using MagickCore::FaxCompression;
549using MagickCore::Group4Compression;
550using MagickCore::JBIG1Compression;
551using MagickCore::JBIG2Compression;
552using MagickCore::JPEG2000Compression;
553using MagickCore::JPEGCompression;
554using MagickCore::LosslessJPEGCompression;
555using MagickCore::LZMACompression;
556using MagickCore::LZWCompression;
557using MagickCore::PizCompression;
558using MagickCore::Pxr24Compression;
559using MagickCore::RLECompression;
560using MagickCore::WebPCompression;
561using MagickCore::ZipCompression;
562using MagickCore::ZipSCompression;
563using MagickCore::ZstdCompression;
564
565// Decoration types
566using MagickCore::DecorationType;
567using MagickCore::UndefinedDecoration;
568using MagickCore::NoDecoration;
569using MagickCore::UnderlineDecoration;
570using MagickCore::OverlineDecoration;
571using MagickCore::LineThroughDecoration;
572
573// Direction types
574using MagickCore::DirectionType;
575using MagickCore::UndefinedDirection;
576using MagickCore::RightToLeftDirection;
577using MagickCore::LeftToRightDirection;
578
579// Dispose methods
580using MagickCore::DisposeType;
581using MagickCore::UndefinedDispose;
582using MagickCore::NoneDispose;
583using MagickCore::BackgroundDispose;
584using MagickCore::PreviousDispose;
585
586// Distort methods
587using MagickCore::DistortMethod;
588using MagickCore::UndefinedDistortion;
589using MagickCore::AffineDistortion;
590using MagickCore::AffineProjectionDistortion;
591using MagickCore::ScaleRotateTranslateDistortion;
592using MagickCore::PerspectiveDistortion;
593using MagickCore::PerspectiveProjectionDistortion;
594using MagickCore::BilinearForwardDistortion;
595using MagickCore::BilinearDistortion;
596using MagickCore::BilinearReverseDistortion;
597using MagickCore::PolynomialDistortion;
598using MagickCore::ArcDistortion;
599using MagickCore::PolarDistortion;
600using MagickCore::DePolarDistortion;
601using MagickCore::Cylinder2PlaneDistortion;
602using MagickCore::Plane2CylinderDistortion;
603using MagickCore::BarrelDistortion;
604using MagickCore::BarrelInverseDistortion;
605using MagickCore::ShepardsDistortion;
606using MagickCore::ResizeDistortion;
607using MagickCore::SentinelDistortion;
608
609// Dither methods
610using MagickCore::DitherMethod;
611using MagickCore::UndefinedDitherMethod;
612using MagickCore::NoDitherMethod;
613using MagickCore::RiemersmaDitherMethod;
614using MagickCore::FloydSteinbergDitherMethod;
615
616// Endian options
617using MagickCore::EndianType;
618using MagickCore::UndefinedEndian;
619using MagickCore::LSBEndian;
620using MagickCore::MSBEndian;
621
622// Boolean types
623using MagickCore::MagickBooleanType;
624using MagickCore::MagickFalse;
625using MagickCore::MagickTrue;
626
627// Evaluate options
628using MagickCore::MagickEvaluateOperator;
629using MagickCore::UndefinedEvaluateOperator;
630using MagickCore::AbsEvaluateOperator;
631using MagickCore::AddEvaluateOperator;
632using MagickCore::AddModulusEvaluateOperator;
633using MagickCore::AndEvaluateOperator;
634using MagickCore::CosineEvaluateOperator;
635using MagickCore::DivideEvaluateOperator;
636using MagickCore::ExponentialEvaluateOperator;
637using MagickCore::GaussianNoiseEvaluateOperator;
638using MagickCore::ImpulseNoiseEvaluateOperator;
639using MagickCore::LaplacianNoiseEvaluateOperator;
640using MagickCore::LeftShiftEvaluateOperator;
641using MagickCore::LogEvaluateOperator;
642using MagickCore::MaxEvaluateOperator;
643using MagickCore::MeanEvaluateOperator;
644using MagickCore::MedianEvaluateOperator;
645using MagickCore::MinEvaluateOperator;
646using MagickCore::MultiplicativeNoiseEvaluateOperator;
647using MagickCore::MultiplyEvaluateOperator;
648using MagickCore::OrEvaluateOperator;
649using MagickCore::PoissonNoiseEvaluateOperator;
650using MagickCore::PowEvaluateOperator;
651using MagickCore::RootMeanSquareEvaluateOperator;
652using MagickCore::RightShiftEvaluateOperator;
653using MagickCore::SetEvaluateOperator;
654using MagickCore::SineEvaluateOperator;
655using MagickCore::SubtractEvaluateOperator;
656using MagickCore::SumEvaluateOperator;
657using MagickCore::ThresholdBlackEvaluateOperator;
658using MagickCore::ThresholdEvaluateOperator;
659using MagickCore::ThresholdWhiteEvaluateOperator;
660using MagickCore::UniformNoiseEvaluateOperator;
661using MagickCore::XorEvaluateOperator;
662
663// Fill rules
664using MagickCore::FillRule;
665using MagickCore::UndefinedRule;
666using MagickCore::EvenOddRule;
667using MagickCore::NonZeroRule;
668
669// Filter types
670using MagickCore::FilterType;
671using MagickCore::UndefinedFilter;
672using MagickCore::PointFilter;
673using MagickCore::BoxFilter;
674using MagickCore::TriangleFilter;
675using MagickCore::HermiteFilter;
676using MagickCore::HannFilter;
677using MagickCore::HammingFilter;
678using MagickCore::BlackmanFilter;
679using MagickCore::GaussianFilter;
680using MagickCore::QuadraticFilter;
681using MagickCore::CubicFilter;
682using MagickCore::CatromFilter;
683using MagickCore::MitchellFilter;
684using MagickCore::JincFilter;
685using MagickCore::SincFilter;
686using MagickCore::SincFastFilter;
687using MagickCore::KaiserFilter;
688using MagickCore::WelchFilter;
689using MagickCore::ParzenFilter;
690using MagickCore::BohmanFilter;
691using MagickCore::BartlettFilter;
692using MagickCore::LagrangeFilter;
693using MagickCore::LanczosFilter;
694using MagickCore::LanczosSharpFilter;
695using MagickCore::Lanczos2Filter;
696using MagickCore::Lanczos2SharpFilter;
697using MagickCore::RobidouxFilter;
698using MagickCore::RobidouxSharpFilter;
699using MagickCore::CosineFilter;
700using MagickCore::SplineFilter;
701using MagickCore::LanczosRadiusFilter;
702using MagickCore::SentinelFilter;
703
704// Geometry flags;
705using MagickCore::GeometryFlags;
706using MagickCore::AreaValue;
707using MagickCore::AspectValue;
708using MagickCore::GreaterValue;
709using MagickCore::HeightValue;
710using MagickCore::LessValue;
711using MagickCore::MinimumValue;
712using MagickCore::NoValue;
713using MagickCore::PercentValue;
714using MagickCore::WidthValue;
715using MagickCore::XNegative;
716using MagickCore::XValue;
717using MagickCore::YNegative;
718using MagickCore::YValue;
719
720// Bit gravity
721using MagickCore::GravityType;
722using MagickCore::UndefinedGravity;
723using MagickCore::ForgetGravity;
724using MagickCore::NorthWestGravity;
725using MagickCore::NorthGravity;
726using MagickCore::NorthEastGravity;
727using MagickCore::WestGravity;
728using MagickCore::CenterGravity;
729using MagickCore::EastGravity;
730using MagickCore::SouthWestGravity;
731using MagickCore::SouthGravity;
732using MagickCore::SouthEastGravity;
733
734// Image types
735using MagickCore::ImageType;
736using MagickCore::UndefinedType;
737using MagickCore::BilevelType;
738using MagickCore::GrayscaleType;
739using MagickCore::GrayscaleAlphaType;
740using MagickCore::PaletteType;
741using MagickCore::PaletteAlphaType;
742using MagickCore::TrueColorType;
743using MagickCore::TrueColorAlphaType;
744using MagickCore::ColorSeparationType;
745using MagickCore::ColorSeparationAlphaType;
746using MagickCore::OptimizeType;
747using MagickCore::PaletteBilevelAlphaType;
748
749// Interlace types
750using MagickCore::InterlaceType;
751using MagickCore::UndefinedInterlace;
752using MagickCore::NoInterlace;
753using MagickCore::LineInterlace;
754using MagickCore::PlaneInterlace;
755using MagickCore::PartitionInterlace;
756using MagickCore::GIFInterlace;
757using MagickCore::JPEGInterlace;
758using MagickCore::PNGInterlace;
759
760// Built-in kernels
761using MagickCore::KernelInfoType;
762using MagickCore::UndefinedKernel;
763using MagickCore::UnityKernel;
764using MagickCore::GaussianKernel;
765using MagickCore::DoGKernel;
766using MagickCore::LoGKernel;
767using MagickCore::BlurKernel;
768using MagickCore::CometKernel;
769using MagickCore::BinomialKernel;
770using MagickCore::LaplacianKernel;
771using MagickCore::SobelKernel;
772using MagickCore::FreiChenKernel;
773using MagickCore::RobertsKernel;
774using MagickCore::PrewittKernel;
775using MagickCore::CompassKernel;
776using MagickCore::KirschKernel;
777using MagickCore::DiamondKernel;
778using MagickCore::SquareKernel;
779using MagickCore::RectangleKernel;
780using MagickCore::OctagonKernel;
781using MagickCore::DiskKernel;
782using MagickCore::PlusKernel;
783using MagickCore::CrossKernel;
784using MagickCore::RingKernel;
785using MagickCore::PeaksKernel;
786using MagickCore::EdgesKernel;
787using MagickCore::CornersKernel;
788using MagickCore::DiagonalsKernel;
789using MagickCore::LineEndsKernel;
790using MagickCore::LineJunctionsKernel;
791using MagickCore::RidgesKernel;
792using MagickCore::ConvexHullKernel;
793using MagickCore::ThinSEKernel;
794using MagickCore::SkeletonKernel;
795using MagickCore::ChebyshevKernel;
796using MagickCore::ManhattanKernel;
797using MagickCore::OctagonalKernel;
798using MagickCore::EuclideanKernel;
799using MagickCore::UserDefinedKernel;
800
801// Layer method
802using MagickCore::LayerMethod;
803using MagickCore::UndefinedLayer;
804using MagickCore::CoalesceLayer;
805using MagickCore::CompareAnyLayer;
806using MagickCore::CompareClearLayer;
807using MagickCore::CompareOverlayLayer;
808using MagickCore::DisposeLayer;
809using MagickCore::OptimizeLayer;
810using MagickCore::OptimizeImageLayer;
811using MagickCore::OptimizePlusLayer;
812using MagickCore::OptimizeTransLayer;
813using MagickCore::RemoveDupsLayer;
814using MagickCore::RemoveZeroLayer;
815using MagickCore::CompositeLayer;
816using MagickCore::MergeLayer;
817using MagickCore::FlattenLayer;
818using MagickCore::MosaicLayer;
819using MagickCore::TrimBoundsLayer;
820
821// Line cap types
822using MagickCore::LineCap;
823using MagickCore::UndefinedCap;
824using MagickCore::ButtCap;
825using MagickCore::RoundCap;
826using MagickCore::SquareCap;
827
828// Line join types
829using MagickCore::LineJoin;
830using MagickCore::UndefinedJoin;
831using MagickCore::MiterJoin;
832using MagickCore::RoundJoin;
833using MagickCore::BevelJoin;
834
835// Log event types
836using MagickCore::LogEventType;
837using MagickCore::UndefinedEvents;
838using MagickCore::NoEvents;
839using MagickCore::AccelerateEvent;
840using MagickCore::AnnotateEvent;
841using MagickCore::BlobEvent;
842using MagickCore::CacheEvent;
843using MagickCore::CoderEvent;
844using MagickCore::ConfigureEvent;
845using MagickCore::DeprecateEvent;
846using MagickCore::DrawEvent;
847using MagickCore::ExceptionEvent;
848using MagickCore::ImageEvent;
849using MagickCore::LocaleEvent;
850using MagickCore::ModuleEvent;
851using MagickCore::PixelEvent;
852using MagickCore::PolicyEvent;
853using MagickCore::ResourceEvent;
854using MagickCore::TraceEvent;
855using MagickCore::TransformEvent;
856using MagickCore::UserEvent;
857using MagickCore::WandEvent;
858using MagickCore::X11Event;
859using MagickCore::CommandEvent;
860using MagickCore::AllEvents;
861
862// Magick functions
863using MagickCore::MagickFunction;
864using MagickCore::UndefinedFunction;
865using MagickCore::ArcsinFunction;
866using MagickCore::ArctanFunction;
867using MagickCore::PolynomialFunction;
868using MagickCore::SinusoidFunction;
869
870// Metric types
871using MagickCore::MetricType;
872using MagickCore::UndefinedErrorMetric;
873using MagickCore::AbsoluteErrorMetric;
874using MagickCore::FuzzErrorMetric;
875using MagickCore::MeanAbsoluteErrorMetric;
876using MagickCore::MeanErrorPerPixelErrorMetric;
877using MagickCore::MeanSquaredErrorMetric;
878using MagickCore::NormalizedCrossCorrelationErrorMetric;
879using MagickCore::PeakAbsoluteErrorMetric;
880using MagickCore::PeakSignalToNoiseRatioErrorMetric;
881using MagickCore::PerceptualHashErrorMetric;
882using MagickCore::RootMeanSquaredErrorMetric;
883
884// Morphology methods
885using MagickCore::MorphologyMethod;
886using MagickCore::UndefinedMorphology;
887using MagickCore::ConvolveMorphology;
888using MagickCore::CorrelateMorphology;
889using MagickCore::ErodeMorphology;
890using MagickCore::DilateMorphology;
891using MagickCore::ErodeIntensityMorphology;
892using MagickCore::DilateIntensityMorphology;
893using MagickCore::IterativeDistanceMorphology;
894using MagickCore::OpenMorphology;
895using MagickCore::CloseMorphology;
896using MagickCore::OpenIntensityMorphology;
897using MagickCore::CloseIntensityMorphology;
898using MagickCore::SmoothMorphology;
899using MagickCore::EdgeInMorphology;
900using MagickCore::EdgeOutMorphology;
901using MagickCore::EdgeMorphology;
902using MagickCore::TopHatMorphology;
903using MagickCore::BottomHatMorphology;
904using MagickCore::HitAndMissMorphology;
905using MagickCore::ThinningMorphology;
906using MagickCore::ThickenMorphology;
907using MagickCore::DistanceMorphology;
908using MagickCore::VoronoiMorphology;
909
910// Noise types
911using MagickCore::NoiseType;
912using MagickCore::UndefinedNoise;
913using MagickCore::UniformNoise;
914using MagickCore::GaussianNoise;
915using MagickCore::MultiplicativeGaussianNoise;
916using MagickCore::ImpulseNoise;
917using MagickCore::LaplacianNoise;
918using MagickCore::PoissonNoise;
919
920// Orientation types
921using MagickCore::OrientationType;
922using MagickCore::UndefinedOrientation;
923using MagickCore::TopLeftOrientation;
924using MagickCore::TopRightOrientation;
925using MagickCore::BottomRightOrientation;
926using MagickCore::BottomLeftOrientation;
927using MagickCore::LeftTopOrientation;
928using MagickCore::RightTopOrientation;
929using MagickCore::RightBottomOrientation;
930using MagickCore::LeftBottomOrientation;
931
932// Paint methods
933using MagickCore::PaintMethod;
934using MagickCore::UndefinedMethod;
935using MagickCore::PointMethod;
936using MagickCore::ReplaceMethod;
937using MagickCore::FloodfillMethod;
938using MagickCore::FillToBorderMethod;
939using MagickCore::ResetMethod;
940
941using MagickCore::PixelChannel;
942using MagickCore::UndefinedPixelChannel;
943using MagickCore::RedPixelChannel;
944using MagickCore::CyanPixelChannel;
945using MagickCore::GrayPixelChannel;
946using MagickCore::LPixelChannel;
947using MagickCore::YPixelChannel;
948using MagickCore::aPixelChannel;
949using MagickCore::GreenPixelChannel;
950using MagickCore::MagentaPixelChannel;
951using MagickCore::CbPixelChannel;
952using MagickCore::bPixelChannel;
953using MagickCore::BluePixelChannel;
954using MagickCore::YellowPixelChannel;
955using MagickCore::CrPixelChannel;
956using MagickCore::BlackPixelChannel;
957using MagickCore::AlphaPixelChannel;
958using MagickCore::IndexPixelChannel;
959using MagickCore::ReadMaskPixelChannel;
960using MagickCore::WriteMaskPixelChannel;
961using MagickCore::MetaPixelChannel;
962using MagickCore::IntensityPixelChannel;
963using MagickCore::CompositePixelChannel;
964using MagickCore::SyncPixelChannel;
965
966// Pixel intensity method
967using MagickCore::PixelIntensityMethod;
968using MagickCore::UndefinedPixelIntensityMethod;
969using MagickCore::AveragePixelIntensityMethod;
970using MagickCore::BrightnessPixelIntensityMethod;
971using MagickCore::LightnessPixelIntensityMethod;
972using MagickCore::MSPixelIntensityMethod;
973using MagickCore::Rec601LumaPixelIntensityMethod;
974using MagickCore::Rec601LuminancePixelIntensityMethod;
975using MagickCore::Rec709LumaPixelIntensityMethod;
976using MagickCore::Rec709LuminancePixelIntensityMethod;
977using MagickCore::RMSPixelIntensityMethod;
978
979// PixelInterpolate methods
980using MagickCore::PixelInterpolateMethod;
981using MagickCore::UndefinedInterpolatePixel;
982using MagickCore::AverageInterpolatePixel;
983using MagickCore::Average9InterpolatePixel;
984using MagickCore::Average16InterpolatePixel;
985using MagickCore::BackgroundInterpolatePixel;
986using MagickCore::BilinearInterpolatePixel;
987using MagickCore::BlendInterpolatePixel;
988using MagickCore::CatromInterpolatePixel;
989using MagickCore::IntegerInterpolatePixel;
990using MagickCore::MeshInterpolatePixel;
991using MagickCore::NearestInterpolatePixel;
992using MagickCore::SplineInterpolatePixel;
993
994// Pixel traits
995using MagickCore::PixelTrait;
996using MagickCore::UndefinedPixelTrait;
997using MagickCore::CopyPixelTrait;
998using MagickCore::UpdatePixelTrait;
999using MagickCore::BlendPixelTrait;
1000
1001// Policy domains
1002using MagickCore::PolicyDomain;
1003using MagickCore::UndefinedPolicyDomain;
1004using MagickCore::CoderPolicyDomain;
1005using MagickCore::DelegatePolicyDomain;
1006using MagickCore::FilterPolicyDomain;
1007using MagickCore::PathPolicyDomain;
1008using MagickCore::ResourcePolicyDomain;
1009using MagickCore::SystemPolicyDomain;
1010using MagickCore::CachePolicyDomain;
1011
1012// Preview types. Not currently used by Magick++
1013using MagickCore::PreviewType;
1014using MagickCore::UndefinedPreview;
1015using MagickCore::RotatePreview;
1016using MagickCore::ShearPreview;
1017using MagickCore::RollPreview;
1018using MagickCore::HuePreview;
1019using MagickCore::SaturationPreview;
1020using MagickCore::BrightnessPreview;
1021using MagickCore::GammaPreview;
1022using MagickCore::SpiffPreview;
1023using MagickCore::DullPreview;
1024using MagickCore::GrayscalePreview;
1025using MagickCore::QuantizePreview;
1026using MagickCore::DespecklePreview;
1027using MagickCore::ReduceNoisePreview;
1028using MagickCore::AddNoisePreview;
1029using MagickCore::SharpenPreview;
1030using MagickCore::BlurPreview;
1031using MagickCore::ThresholdPreview;
1032using MagickCore::EdgeDetectPreview;
1033using MagickCore::SpreadPreview;
1034using MagickCore::SolarizePreview;
1035using MagickCore::ShadePreview;
1036using MagickCore::RaisePreview;
1037using MagickCore::SegmentPreview;
1038using MagickCore::SwirlPreview;
1039using MagickCore::ImplodePreview;
1040using MagickCore::WavePreview;
1041using MagickCore::OilPaintPreview;
1042using MagickCore::CharcoalDrawingPreview;
1043using MagickCore::JPEGPreview;
1044
1045// Quantum types
1046using MagickCore::QuantumType;
1047using MagickCore::IndexQuantum;
1048using MagickCore::GrayQuantum;
1049using MagickCore::IndexAlphaQuantum;
1050using MagickCore::GrayAlphaQuantum;
1051using MagickCore::RedQuantum;
1052using MagickCore::CyanQuantum;
1053using MagickCore::GreenQuantum;
1054using MagickCore::YellowQuantum;
1055using MagickCore::BlueQuantum;
1056using MagickCore::MagentaQuantum;
1057using MagickCore::AlphaQuantum;
1058using MagickCore::BlackQuantum;
1059using MagickCore::RGBQuantum;
1060using MagickCore::RGBAQuantum;
1061using MagickCore::CMYKQuantum;
1062
1063// Pixel mask types
1064using MagickCore::PixelMask;
1065using MagickCore::UndefinedPixelMask;
1066using MagickCore::ReadPixelMask;
1067using MagickCore::WritePixelMask;
1068
1069// Rendering intents
1070using MagickCore::RenderingIntent;
1071using MagickCore::UndefinedIntent;
1072using MagickCore::SaturationIntent;
1073using MagickCore::PerceptualIntent;
1074using MagickCore::AbsoluteIntent;
1075using MagickCore::RelativeIntent;
1076
1077// Resource types
1078using MagickCore::ResourceType;
1079using MagickCore::UndefinedResource;
1080using MagickCore::AreaResource;
1081using MagickCore::DiskResource;
1082using MagickCore::FileResource;
1083using MagickCore::HeightResource;
1084using MagickCore::MapResource;
1085using MagickCore::MemoryResource;
1086using MagickCore::ThreadResource;
1087using MagickCore::ThrottleResource;
1088using MagickCore::TimeResource;
1089using MagickCore::WidthResource;
1090using MagickCore::ListLengthResource;
1091
1092// Resolution units
1093using MagickCore::ResolutionType;
1094using MagickCore::UndefinedResolution;
1095using MagickCore::PixelsPerInchResolution;
1096using MagickCore::PixelsPerCentimeterResolution;
1097
1098// Sparse Color methods
1099using MagickCore::SparseColorMethod;
1100using MagickCore::UndefinedColorInterpolate;
1101using MagickCore::BarycentricColorInterpolate;
1102using MagickCore::BilinearColorInterpolate;
1103using MagickCore::PolynomialColorInterpolate;
1104using MagickCore::ShepardsColorInterpolate;
1105using MagickCore::VoronoiColorInterpolate;
1106using MagickCore::InverseColorInterpolate;
1107using MagickCore::ManhattanColorInterpolate;
1108
1109// Statistic type
1110using MagickCore::StatisticType;
1111using MagickCore::UndefinedStatistic;
1112using MagickCore::GradientStatistic;
1113using MagickCore::MaximumStatistic;
1114using MagickCore::MeanStatistic;
1115using MagickCore::MedianStatistic;
1116using MagickCore::MinimumStatistic;
1117using MagickCore::ModeStatistic;
1118using MagickCore::NonpeakStatistic;
1119using MagickCore::RootMeanSquareStatistic;
1120using MagickCore::StandardDeviationStatistic;
1121
1122// StorageType type
1123using MagickCore::StorageType;
1124using MagickCore::UndefinedPixel;
1125using MagickCore::CharPixel;
1126using MagickCore::DoublePixel;
1127using MagickCore::FloatPixel;
1128using MagickCore::LongPixel;
1129using MagickCore::LongLongPixel;
1130using MagickCore::QuantumPixel;
1131using MagickCore::ShortPixel;
1132
1133// StretchType type
1134using MagickCore::StretchType;
1135using MagickCore::UndefinedStretch;
1136using MagickCore::NormalStretch;
1137using MagickCore::UltraCondensedStretch;
1138using MagickCore::ExtraCondensedStretch;
1139using MagickCore::CondensedStretch;
1140using MagickCore::SemiCondensedStretch;
1141using MagickCore::SemiExpandedStretch;
1142using MagickCore::ExpandedStretch;
1143using MagickCore::ExtraExpandedStretch;
1144using MagickCore::UltraExpandedStretch;
1145using MagickCore::AnyStretch;
1146
1147// StyleType type
1148using MagickCore::StyleType;
1149using MagickCore::UndefinedStyle;
1150using MagickCore::NormalStyle;
1151using MagickCore::ItalicStyle;
1152using MagickCore::ObliqueStyle;
1153using MagickCore::AnyStyle;
1154
1155// Virtual pixel methods
1156using MagickCore::VirtualPixelMethod;
1157using MagickCore::UndefinedVirtualPixelMethod;
1158using MagickCore::BackgroundVirtualPixelMethod;
1159using MagickCore::DitherVirtualPixelMethod;
1160using MagickCore::EdgeVirtualPixelMethod;
1161using MagickCore::MirrorVirtualPixelMethod;
1162using MagickCore::RandomVirtualPixelMethod;
1163using MagickCore::TileVirtualPixelMethod;
1164using MagickCore::TransparentVirtualPixelMethod;
1165using MagickCore::MaskVirtualPixelMethod;
1166using MagickCore::BlackVirtualPixelMethod;
1167using MagickCore::GrayVirtualPixelMethod;
1168using MagickCore::WhiteVirtualPixelMethod;
1169using MagickCore::HorizontalTileVirtualPixelMethod;
1170using MagickCore::VerticalTileVirtualPixelMethod;
1171using MagickCore::HorizontalTileEdgeVirtualPixelMethod;
1172using MagickCore::VerticalTileEdgeVirtualPixelMethod;
1173using MagickCore::CheckerTileVirtualPixelMethod;
1174
1175 #if defined(MAGICKCORE_IMPLEMENTATION)
1176//
1177// ImageMagick symbols used in implementation code
1178//
1179using MagickCore::AcquireAlignedMemory;
1180using MagickCore::AcquireAuthenticCacheView;
1181using MagickCore::AcquireDrawingWand;
1182using MagickCore::AcquireExceptionInfo;
1183using MagickCore::AcquireVirtualCacheView;
1184using MagickCore::AcquireImage;
1185using MagickCore::AcquireKernelInfo;
1186using MagickCore::AcquireMagickInfo;
1187using MagickCore::AcquireMagickMemory;
1188using MagickCore::AcquireQuantumInfo;
1189using MagickCore::AcquireString;
1190using MagickCore::AcquireStringInfo;
1191using MagickCore::AdaptiveBlurImage;
1192using MagickCore::AdaptiveResizeImage;
1193using MagickCore::AdaptiveSharpenImage;
1194using MagickCore::AdaptiveThresholdImage;
1195using MagickCore::AddNoiseImage;
1196using MagickCore::AffineTransformImage;
1197using MagickCore::AnnotateImage;
1198using MagickCore::AutoGammaImage;
1199using MagickCore::AutoLevelImage;
1200using MagickCore::AutoOrientImage;
1201using MagickCore::AutoThresholdImage;
1202using MagickCore::Base64Decode;
1203using MagickCore::Base64Encode;
1204using MagickCore::BilevelImage;
1205using MagickCore::BlackThresholdImage;
1206using MagickCore::BlobToImage;
1207using MagickCore::BlueShiftImage;
1208using MagickCore::BlurImage;
1209using MagickCore::BrightnessContrastImage;
1210using MagickCore::BorderImage;
1211using MagickCore::CharcoalImage;
1212using MagickCore::CannyEdgeImage;
1213using MagickCore::ChopImage;
1214using MagickCore::ClampImage;
1215using MagickCore::ClampToQuantum;
1216using MagickCore::ClearMagickException;
1217using MagickCore::CloneDrawInfo;
1218using MagickCore::CloneImage;
1219using MagickCore::CloneImageInfo;
1220using MagickCore::CloneQuantizeInfo;
1221using MagickCore::ClutImage;
1222using MagickCore::ColorDecisionListImage;
1223using MagickCore::ColorizeImage;
1224using MagickCore::ColorMatrixImage;
1225using MagickCore::CommandOptionToMnemonic;
1226using MagickCore::CompareImages;
1227using MagickCore::CompareImagesLayers;
1228using MagickCore::CompositeImage;
1229using MagickCore::ConnectedComponentsImage;
1230using MagickCore::ConstituteImage;
1231using MagickCore::ContrastImage;
1232using MagickCore::ContrastStretchImage;
1233using MagickCore::ConvertHSLToRGB;
1234using MagickCore::ConvertRGBToHSL;
1235using MagickCore::ConvolveImage;
1236using MagickCore::CopyImagePixels;
1237using MagickCore::CopyMagickString;
1238using MagickCore::CropImage;
1239using MagickCore::CropImageToTiles;
1240using MagickCore::CycleColormapImage;
1241using MagickCore::DecipherImage;
1242using MagickCore::DeleteImageOption;
1243using MagickCore::DeleteImageRegistry;
1244using MagickCore::DeskewImage;
1245using MagickCore::DespeckleImage;
1246using MagickCore::DestroyCacheView;
1247using MagickCore::DestroyDrawInfo;
1248using MagickCore::DestroyDrawingWand;
1249using MagickCore::DestroyExceptionInfo;
1250using MagickCore::DestroyImageInfo;
1251using MagickCore::DestroyImageList;
1252using MagickCore::DestroyKernelInfo;
1253using MagickCore::DestroyMagickWand;
1254using MagickCore::DestroyPixelWand;
1255using MagickCore::DestroyQuantizeInfo;
1256using MagickCore::DestroyQuantumInfo;
1257using MagickCore::DestroyString;
1258using MagickCore::DestroyStringInfo;
1259using MagickCore::DisplayImages;
1260using MagickCore::DistortImage;
1261using MagickCore::DrawAffine;
1262using MagickCore::DrawAlpha;
1263using MagickCore::DrawAnnotation;
1264using MagickCore::DrawArc;
1265using MagickCore::DrawBezier;
1266using MagickCore::DrawCircle;
1267using MagickCore::DrawColor;
1268using MagickCore::DrawComment;
1269using MagickCore::DrawComposite;
1270using MagickCore::DrawEllipse;
1271using MagickCore::DrawImage;
1272using MagickCore::DrawLine;
1273using MagickCore::DrawPathClose;
1274using MagickCore::DrawPathCurveToAbsolute;
1275using MagickCore::DrawPathCurveToQuadraticBezierAbsolute;
1276using MagickCore::DrawPathCurveToQuadraticBezierRelative;
1277using MagickCore::DrawPathCurveToQuadraticBezierSmoothAbsolute;
1278using MagickCore::DrawPathCurveToQuadraticBezierSmoothRelative;
1279using MagickCore::DrawPathCurveToRelative;
1280using MagickCore::DrawPathCurveToSmoothAbsolute;
1281using MagickCore::DrawPathCurveToSmoothRelative;
1282using MagickCore::DrawPathEllipticArcAbsolute;
1283using MagickCore::DrawPathEllipticArcRelative;
1284using MagickCore::DrawPathFinish;
1285using MagickCore::DrawPathLineToAbsolute;
1286using MagickCore::DrawPathLineToHorizontalAbsolute;
1287using MagickCore::DrawPathLineToHorizontalRelative;
1288using MagickCore::DrawPathLineToRelative;
1289using MagickCore::DrawPathLineToVerticalAbsolute;
1290using MagickCore::DrawPathLineToVerticalRelative;
1291using MagickCore::DrawPathMoveToAbsolute;
1292using MagickCore::DrawPathMoveToRelative;
1293using MagickCore::DrawPathStart;
1294using MagickCore::DrawPoint;
1295using MagickCore::DrawPolygon;
1296using MagickCore::DrawPolyline;
1297using MagickCore::DrawPopClipPath;
1298using MagickCore::DrawPopDefs;
1299using MagickCore::DrawPopPattern;
1300using MagickCore::DrawPushClipPath;
1301using MagickCore::DrawPushDefs;
1302using MagickCore::DrawPushPattern;
1303using MagickCore::DrawRectangle;
1304using MagickCore::DrawRender;
1305using MagickCore::DrawRotate;
1306using MagickCore::DrawRoundRectangle;
1307using MagickCore::DrawScale;
1308using MagickCore::DrawSetClipPath;
1309using MagickCore::DrawSetClipRule;
1310using MagickCore::DrawSetClipUnits;
1311using MagickCore::DrawSetFillColor;
1312using MagickCore::DrawSetFillOpacity;
1313using MagickCore::DrawSetFillPatternURL;
1314using MagickCore::DrawSetFillRule;
1315using MagickCore::DrawSetFont;
1316using MagickCore::DrawSetFontFamily;
1317using MagickCore::DrawSetFontSize;
1318using MagickCore::DrawSetFontStretch;
1319using MagickCore::DrawSetFontStyle;
1320using MagickCore::DrawSetFontWeight;
1321using MagickCore::DrawSetGravity;
1322using MagickCore::DrawSetStrokeAntialias;
1323using MagickCore::DrawSetStrokeColor;
1324using MagickCore::DrawSetStrokeDashArray;
1325using MagickCore::DrawSetStrokeDashOffset;
1326using MagickCore::DrawSetStrokeLineCap;
1327using MagickCore::DrawSetStrokeLineJoin;
1328using MagickCore::DrawSetStrokeMiterLimit;
1329using MagickCore::DrawSetStrokeOpacity;
1330using MagickCore::DrawSetStrokePatternURL;
1331using MagickCore::DrawSetStrokeWidth;
1332using MagickCore::DrawSetTextAntialias;
1333using MagickCore::DrawSetTextDecoration;
1334using MagickCore::DrawSetTextEncoding;
1335using MagickCore::DrawSetTextInterlineSpacing;
1336using MagickCore::DrawSetTextInterwordSpacing;
1337using MagickCore::DrawSetTextKerning;
1338using MagickCore::DrawSetTextUnderColor;
1339using MagickCore::DrawSetViewbox;
1340using MagickCore::DrawSkewX;
1341using MagickCore::DrawSkewY;
1342using MagickCore::DrawTranslate;
1343using MagickCore::EdgeImage;
1344using MagickCore::EmbossImage;
1345using MagickCore::EncipherImage;
1346using MagickCore::EnhanceImage;
1347using MagickCore::EqualizeImage;
1348using MagickCore::EvaluateImage;
1349using MagickCore::ExportImagePixels;
1350using MagickCore::ExportQuantumPixels;
1351using MagickCore::ExtentImage;
1352using MagickCore::FlipImage;
1353using MagickCore::FloodfillPaintImage;
1354using MagickCore::FlopImage;
1355using MagickCore::FormatLocaleString;
1356using MagickCore::ForwardFourierTransformImage;
1357using MagickCore::FrameImage;
1358using MagickCore::FxImage;
1359using MagickCore::GammaImage;
1360using MagickCore::GaussianBlurImage;
1361using MagickCore::GaussianBlurImage;
1362using MagickCore::GetAffineMatrix;
1363using MagickCore::GetAuthenticMetacontent;
1364using MagickCore::GetBlobSize;
1365using MagickCore::GetCacheViewAuthenticMetacontent;
1366using MagickCore::GetCacheViewAuthenticPixels;
1367using MagickCore::GetCacheViewVirtualPixels;
1368using MagickCore::GetClientName;
1369using MagickCore::GetColorTuple;
1370using MagickCore::GetDrawInfo;
1371using MagickCore::GetGeometry;
1372using MagickCore::GetImageArtifact;
1373using MagickCore::GetImageMoments;
1374using MagickCore::GetImageBoundingBox;
1375using MagickCore::GetImageDistortion;
1376using MagickCore::GetImageDepth;
1377using MagickCore::GetImageMask;
1378using MagickCore::GetImageMean;
1379using MagickCore::GetImageKurtosis;
1380using MagickCore::GetImageRange;
1381using MagickCore::GetImageDepth;
1382using MagickCore::GetImageInfo;
1383using MagickCore::GetImageInfoFile;
1384using MagickCore::GetImageOption;
1385using MagickCore::GetImagePerceptualHash;
1386using MagickCore::GetAuthenticPixels;
1387using MagickCore::GetImageProfile;
1388using MagickCore::GetImageProperty;
1389using MagickCore::GetImageQuantizeError;
1390using MagickCore::GetImageType;
1391using MagickCore::GetMagickDecoderThreadSupport;
1392using MagickCore::GetMagickEncoderThreadSupport;
1393using MagickCore::GetMagickInfo;
1394using MagickCore::GetMultilineTypeMetrics;
1395using MagickCore::GetNextValueInLinkedList;
1396using MagickCore::GetNumberOfElementsInLinkedList;
1397using MagickCore::GetPixelBlue;
1398using MagickCore::GetPixelChannelOffset;
1399using MagickCore::GetPixelChannelTraits;
1400using MagickCore::GetPixelGreen;
1401using MagickCore::GetPixelInfo;
1402using MagickCore::GetPixelRed;
1403using MagickCore::GetNumberColors;
1404using MagickCore::GetPageGeometry;
1405using MagickCore::GetQuantizeInfo;
1406using MagickCore::GetStringInfoDatum;
1407using MagickCore::GetStringInfoLength;
1408using MagickCore::GetTypeMetrics;
1409using MagickCore::GetValueFromLinkedList;
1410using MagickCore::GetVirtualMetacontent;
1411using MagickCore::GetVirtualPixels;
1412using MagickCore::GetImageVirtualPixelMethod;
1413using MagickCore::GlobExpression;
1414using MagickCore::GravityAdjustGeometry;
1415using MagickCore::GrayscaleImage;
1416using MagickCore::HaldClutImage;
1417using MagickCore::HoughLineImage;
1418using MagickCore::ImageToBlob;
1419using MagickCore::ImagesToBlob;
1420using MagickCore::ImplodeImage;
1421using MagickCore::ImportQuantumPixels;
1422using MagickCore::InterpretImageProperties;
1423using MagickCore::InverseFourierTransformImage;
1424using MagickCore::InvokeDynamicImageFilter;
1425using MagickCore::IsEventLogging;
1426using MagickCore::IsGeometry;
1427using MagickCore::IsImageOpaque;
1428using MagickCore::IsImagesEqual;
1429using MagickCore::KuwaharaImage;
1430using MagickCore::LevelImage;
1431using MagickCore::LevelImageColors;
1432using MagickCore::LevelizeImage;
1433using MagickCore::LinearStretchImage;
1434using MagickCore::LiquidRescaleImage;
1435using MagickCore::LocalContrastImage;
1436using MagickCore::LocaleCompare;
1437using MagickCore::LockSemaphoreInfo;
1438using MagickCore::LogMagickEvent;
1439using MagickCore::MagickCoreTerminus;
1440using MagickCore::MagickToMime;
1441using MagickCore::MagnifyImage;
1442using MagickCore::MergeImageLayers;
1443using MagickCore::MinifyImage;
1444using MagickCore::ModulateImage;
1445using MagickCore::MorphologyImage;
1446using MagickCore::MotionBlurImage;
1447using MagickCore::NegateImage;
1448using MagickCore::NewMagickWandFromImage;
1449using MagickCore::NewPixelWand;
1450using MagickCore::NormalizeImage;
1451using MagickCore::OilPaintImage;
1452using MagickCore::OpaquePaintImage;
1453using MagickCore::OrderedDitherImage;
1454using MagickCore::OptimizeImageLayers;
1455using MagickCore::OptimizeImageTransparency;
1456using MagickCore::OptimizePlusImageLayers;
1457using MagickCore::ParseMetaGeometry;
1458using MagickCore::PerceptibleImage;
1459using MagickCore::PingBlob;
1460using MagickCore::PingImage;
1461using MagickCore::PixelSetPixelColor;
1462using MagickCore::PolaroidImage;
1463using MagickCore::PopDrawingWand;
1464using MagickCore::PosterizeImage;
1465using MagickCore::ProfileImage;
1466using MagickCore::PushDrawingWand;
1467using MagickCore::QuantizeImage;
1468using MagickCore::QueueAuthenticPixels;
1469using MagickCore::QueueCacheViewAuthenticPixels;
1470using MagickCore::RaiseImage;
1471using MagickCore::RandomThresholdImage;
1472using MagickCore::ReadImage;
1473using MagickCore::RegisterMagickInfo;
1474using MagickCore::RelinquishMagickMemory;
1475using MagickCore::RemapImage;
1476using MagickCore::ResampleImage;
1477using MagickCore::ResetLinkedListIterator;
1478using MagickCore::ResizeImage;
1479using MagickCore::ResizeMagickMemory;
1480using MagickCore::RollImage;
1481using MagickCore::RotateImage;
1482using MagickCore::RotationalBlurImage;
1483using MagickCore::SampleImage;
1484using MagickCore::ScaleImage;
1485using MagickCore::SegmentImage;
1486using MagickCore::SelectiveBlurImage;
1487using MagickCore::SeparateImage;
1488using MagickCore::SepiaToneImage;
1489using MagickCore::SetGeometry;
1490using MagickCore::SetImageAlpha;
1491using MagickCore::SetImageArtifact;
1492using MagickCore::SetImageBackgroundColor;
1493using MagickCore::SetImageColorspace;
1494using MagickCore::SetImageDepth;
1495using MagickCore::SetImageExtent;
1496using MagickCore::SetImageInfo;
1497using MagickCore::SetImageInfoFile;
1498using MagickCore::SetImageMask;
1499using MagickCore::SetImageOption;
1500using MagickCore::SetImageProfile;
1501using MagickCore::SetImageProperty;
1502using MagickCore::SetImageRegistry;
1503using MagickCore::SetImageType;
1504using MagickCore::SetLogEventMask;
1505using MagickCore::SetMagickResourceLimit;
1506using MagickCore::SetImageVirtualPixelMethod;
1507using MagickCore::SetPixelChannel;
1508using MagickCore::SetImageChannelMask;
1509using MagickCore::SetStringInfoDatum;
1510using MagickCore::ShadeImage;
1511using MagickCore::ShadowImage;
1512using MagickCore::SharpenImage;
1513using MagickCore::SharpenImage;
1514using MagickCore::ShaveImage;
1515using MagickCore::ShearImage;
1516using MagickCore::SigmoidalContrastImage;
1517using MagickCore::SignatureImage;
1518using MagickCore::SimilarityImage;
1519using MagickCore::SketchImage;
1520using MagickCore::SmushImages;
1521using MagickCore::SolarizeImage;
1522using MagickCore::SparseColorImage;
1523using MagickCore::SpliceImage;
1524using MagickCore::SpreadImage;
1525using MagickCore::StatisticImage;
1526using MagickCore::SteganoImage;
1527using MagickCore::StereoImage;
1528using MagickCore::StripImage;
1529using MagickCore::SwirlImage;
1530using MagickCore::SyncCacheViewAuthenticPixels;
1531using MagickCore::SyncImage;
1532using MagickCore::SyncAuthenticPixels;
1533using MagickCore::TextureImage;
1534using MagickCore::ThrowException;
1535using MagickCore::TintImage;
1536using MagickCore::TransformImageColorspace;
1537using MagickCore::TransparentPaintImage;
1538using MagickCore::TransparentPaintImageChroma;
1539using MagickCore::TransposeImage;
1540using MagickCore::TransverseImage;
1541using MagickCore::TrimImage;
1542using MagickCore::UniqueImageColors;
1543using MagickCore::UnlockSemaphoreInfo;
1544using MagickCore::UnregisterMagickInfo;
1545using MagickCore::UnsharpMaskImage;
1546using MagickCore::VignetteImage;
1547using MagickCore::WaveImage;
1548using MagickCore::WaveletDenoiseImage;
1549using MagickCore::WhiteThresholdImage;
1550using MagickCore::WriteImage;
1551
1552 #endif // MAGICKCORE_IMPLEMENTATION
1553
1554 }
1555
1557 //
1558 // No user-serviceable parts beyond this point
1559 //
1561 #define GetPPException \
1562 MagickCore::ExceptionInfo \
1563 *exceptionInfo; \
1564 exceptionInfo=MagickCore::AcquireExceptionInfo();
1565 #define GetAndSetPPChannelMask(channel) \
1566 MagickCore::ChannelType \
1567 channel_mask; \
1568 channel_mask=MagickCore::SetImageChannelMask(image(),channel)
1569 #define ClonePPDrawException(wand) \
1570 MagickCore::ExceptionInfo \
1571 *exceptionInfo; \
1572 exceptionInfo=MagickCore::DrawCloneExceptionInfo(wand)
1573 #define RestorePPChannelMask \
1574 MagickCore::SetPixelChannelMask(image(),channel_mask)
1575 #define SetPPChannelMask(channel) \
1576 (void) MagickCore::SetImageChannelMask(image(),channel)
1577 #define ThrowPPDrawException(quiet) \
1578 throwException(exceptionInfo,quiet); \
1579 (void) MagickCore::DestroyExceptionInfo(exceptionInfo)
1580 #define ThrowPPException(quiet) \
1581 throwException(exceptionInfo,quiet); \
1582 (void) MagickCore::DestroyExceptionInfo(exceptionInfo)
1583
1584 #endif // Magick_Include_header
Definition: Include.h:45
Definition: Blob.h:17