magick-image.h revision 549a37e6cd4593dcb997230cd3584c5afead5552
1/*
2  Copyright 1999-2010 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  MagickWand image Methods.
17*/
18
19#ifndef _MAGICKWAND_MAGICK_IMAGE_H
20#define _MAGICKWAND_MAGICK_IMAGE_H
21
22#if defined(__cplusplus) || defined(c_plusplus)
23extern "C" {
24#endif
25
26extern WandExport ChannelFeatures
27  *MagickGetImageChannelFeatures(MagickWand *,const unsigned long);
28
29extern WandExport ChannelStatistics
30  *MagickGetImageChannelStatistics(MagickWand *);
31
32extern WandExport char
33  *MagickGetImageFilename(MagickWand *),
34  *MagickGetImageFormat(MagickWand *),
35  *MagickGetImageSignature(MagickWand *),
36  *MagickIdentifyImage(MagickWand *);
37
38extern WandExport ColorspaceType
39  MagickGetImageColorspace(MagickWand *);
40
41extern WandExport CompositeOperator
42  MagickGetImageCompose(MagickWand *);
43
44extern WandExport CompressionType
45  MagickGetImageCompression(MagickWand *);
46
47extern WandExport DisposeType
48  MagickGetImageDispose(MagickWand *);
49
50extern WandExport double
51  *MagickGetImageChannelDistortions(MagickWand *,const MagickWand *,
52    const MetricType),
53  MagickGetImageFuzz(MagickWand *),
54  MagickGetImageGamma(MagickWand *),
55  MagickGetImageTotalInkDensity(MagickWand *);
56
57extern WandExport GravityType
58  MagickGetImageGravity(MagickWand *);
59
60extern WandExport Image
61  *MagickDestroyImage(Image *),
62  *GetImageFromMagickWand(const MagickWand *);
63
64extern WandExport ImageType
65  MagickGetImageType(MagickWand *);
66
67extern WandExport InterlaceType
68  MagickGetImageInterlaceScheme(MagickWand *);
69
70extern WandExport InterpolatePixelMethod
71  MagickGetImageInterpolateMethod(MagickWand *);
72
73extern WandExport MagickBooleanType
74  MagickAdaptiveBlurImage(MagickWand *,const double,const double),
75  MagickAdaptiveBlurImageChannel(MagickWand *,const ChannelType,const double,
76    const double),
77  MagickAdaptiveResizeImage(MagickWand *,const unsigned long,
78    const unsigned long),
79  MagickAdaptiveSharpenImage(MagickWand *,const double,const double),
80  MagickAdaptiveSharpenImageChannel(MagickWand *,const ChannelType,const double,
81    const double),
82  MagickAdaptiveThresholdImage(MagickWand *,const unsigned long,
83    const unsigned long,const long),
84  MagickAddImage(MagickWand *,const MagickWand *),
85  MagickAddNoiseImage(MagickWand *,const NoiseType),
86  MagickAddNoiseImageChannel(MagickWand *,const ChannelType,const NoiseType),
87  MagickAffineTransformImage(MagickWand *,const DrawingWand *),
88  MagickAnnotateImage(MagickWand *,const DrawingWand *,const double,
89    const double,const double,const char *),
90  MagickAnimateImages(MagickWand *,const char *),
91  MagickAutoGammaImage(MagickWand *),
92  MagickAutoGammaImageChannel(MagickWand *,const ChannelType),
93  MagickAutoLevelImage(MagickWand *),
94  MagickAutoLevelImageChannel(MagickWand *,const ChannelType),
95  MagickBlackThresholdImage(MagickWand *,const PixelWand *),
96  MagickBlueShiftImage(MagickWand *,const double),
97  MagickBlurImage(MagickWand *,const double,const double),
98  MagickBlurImageChannel(MagickWand *,const ChannelType,const double,
99    const double),
100  MagickBorderImage(MagickWand *,const PixelWand *,const unsigned long,
101    const unsigned long),
102  MagickBrightnessContrastImage(MagickWand *,const double,const double),
103  MagickBrightnessContrastImageChannel(MagickWand *,const ChannelType,
104    const double,const double),
105  MagickCharcoalImage(MagickWand *,const double,const double),
106  MagickChopImage(MagickWand *,const unsigned long,const unsigned long,
107    const long,const long),
108  MagickClampImage(MagickWand *),
109  MagickClampImageChannel(MagickWand *,const ChannelType),
110  MagickClipImage(MagickWand *),
111  MagickClipImagePath(MagickWand *,const char *,const MagickBooleanType),
112  MagickClutImage(MagickWand *,const MagickWand *),
113  MagickClutImageChannel(MagickWand *,const ChannelType,const MagickWand *),
114  MagickColorDecisionListImage(MagickWand *,const char *),
115  MagickColorizeImage(MagickWand *,const PixelWand *,const PixelWand *),
116  MagickCommentImage(MagickWand *,const char *),
117  MagickCompositeImage(MagickWand *,const MagickWand *,const CompositeOperator,
118    const long,const long),
119  MagickCompositeImageChannel(MagickWand *,const ChannelType,const MagickWand *,    const CompositeOperator,const long,const long),
120  MagickConstituteImage(MagickWand *,const unsigned long,const unsigned long,
121    const char *,const StorageType,const void *),
122  MagickContrastImage(MagickWand *,const MagickBooleanType),
123  MagickContrastStretchImage(MagickWand *,const double,const double),
124  MagickContrastStretchImageChannel(MagickWand *,const ChannelType,const double,
125    const double),
126  MagickConvolveImage(MagickWand *,const unsigned long,const double *),
127  MagickConvolveImageChannel(MagickWand *,const ChannelType,const unsigned long,
128    const double *),
129  MagickCropImage(MagickWand *,const unsigned long,const unsigned long,
130    const long,const long),
131  MagickCycleColormapImage(MagickWand *,const long),
132  MagickDecipherImage(MagickWand *,const char *),
133  MagickDeskewImage(MagickWand *,const double),
134  MagickDespeckleImage(MagickWand *),
135  MagickDisplayImage(MagickWand *,const char *),
136  MagickDisplayImages(MagickWand *,const char *),
137  MagickDistortImage(MagickWand *,const DistortImageMethod,const unsigned long,
138    const double *,const MagickBooleanType),
139  MagickDrawImage(MagickWand *,const DrawingWand *),
140  MagickEdgeImage(MagickWand *,const double),
141  MagickEmbossImage(MagickWand *,const double,const double),
142  MagickEncipherImage(MagickWand *,const char *),
143  MagickEnhanceImage(MagickWand *),
144  MagickEqualizeImage(MagickWand *),
145  MagickEqualizeImageChannel(MagickWand *,const ChannelType),
146  MagickEvaluateImage(MagickWand *,const MagickEvaluateOperator,const double),
147  MagickEvaluateImageChannel(MagickWand *,const ChannelType,
148    const MagickEvaluateOperator,const double),
149  MagickExportImagePixels(MagickWand *,const long,const long,
150    const unsigned long,const unsigned long,const char *,const StorageType,
151    void *),
152  MagickExtentImage(MagickWand *,const unsigned long,const unsigned long,
153    const long,const long),
154  MagickFilterImage(MagickWand *,const KernelInfo *),
155  MagickFilterImageChannel(MagickWand *,const ChannelType,const KernelInfo *),
156  MagickFlipImage(MagickWand *),
157  MagickFloodfillPaintImage(MagickWand *,const ChannelType,const PixelWand *,
158    const double,const PixelWand *,const long,const long,
159    const MagickBooleanType),
160  MagickFlopImage(MagickWand *),
161  MagickForwardFourierTransformImage(MagickWand *,const MagickBooleanType),
162  MagickFrameImage(MagickWand *,const PixelWand *,const unsigned long,
163    const unsigned long,const long,const long),
164  MagickFunctionImage(MagickWand *,const MagickFunction,const unsigned long,
165    const double *),
166  MagickFunctionImageChannel(MagickWand *,const ChannelType,
167    const MagickFunction,const unsigned long,const double *),
168  MagickGammaImage(MagickWand *,const double),
169  MagickGammaImageChannel(MagickWand *,const ChannelType,const double),
170  MagickGaussianBlurImage(MagickWand *,const double,const double),
171  MagickGaussianBlurImageChannel(MagickWand *,const ChannelType,const double,
172    const double),
173  MagickGetImageAlphaChannel(MagickWand *),
174  MagickGetImageBackgroundColor(MagickWand *,PixelWand *),
175  MagickGetImageBluePrimary(MagickWand *,double *,double *),
176  MagickGetImageBorderColor(MagickWand *,PixelWand *),
177  MagickGetImageChannelDistortion(MagickWand *,const MagickWand *,
178    const ChannelType,const MetricType,double *),
179  MagickGetImageChannelKurtosis(MagickWand *,const ChannelType,double *,
180    double *),
181  MagickGetImageChannelMean(MagickWand *,const ChannelType,double *,double *),
182  MagickGetImageChannelRange(MagickWand *,const ChannelType,double *,double *),
183  MagickGetImageColormapColor(MagickWand *,const unsigned long,PixelWand *),
184  MagickGetImageDistortion(MagickWand *,const MagickWand *,const MetricType,
185    double *),
186  MagickGetImageGreenPrimary(MagickWand *,double *,double *),
187  MagickGetImageMatteColor(MagickWand *,PixelWand *),
188  MagickGetImageLength(MagickWand *,MagickSizeType *),
189  MagickGetImagePage(MagickWand *,unsigned long *,unsigned long *,long *,
190    long *),
191  MagickGetImagePixelColor(MagickWand *,const long,const long,PixelWand *),
192  MagickGetImageRange(MagickWand *,double *,double *),
193  MagickGetImageRedPrimary(MagickWand *,double *,double *),
194  MagickGetImageResolution(MagickWand *,double *,double *),
195  MagickGetImageWhitePoint(MagickWand *,double *,double *),
196  MagickHaldClutImage(MagickWand *,const MagickWand *),
197  MagickHaldClutImageChannel(MagickWand *,const ChannelType,const MagickWand *),
198  MagickHasNextImage(MagickWand *),
199  MagickHasPreviousImage(MagickWand *),
200  MagickImplodeImage(MagickWand *,const double),
201  MagickImportImagePixels(MagickWand *,const long,const long,
202    const unsigned long,const unsigned long,const char *,const StorageType,
203    const void *),
204  MagickInverseFourierTransformImage(MagickWand *,MagickWand *,
205    const MagickBooleanType),
206  MagickLabelImage(MagickWand *,const char *),
207  MagickLevelImage(MagickWand *,const double,const double,const double),
208  MagickLevelImageChannel(MagickWand *,const ChannelType,const double,
209    const double,const double),
210  MagickLinearStretchImage(MagickWand *,const double,const double),
211  MagickLiquidRescaleImage(MagickWand *,const unsigned long,const unsigned long,
212    const double,const double),
213  MagickMagnifyImage(MagickWand *),
214  MagickMedianFilterImage(MagickWand *,const double),
215  MagickMinifyImage(MagickWand *),
216  MagickModulateImage(MagickWand *,const double,const double,const double),
217  MagickMorphologyImage(MagickWand *,MorphologyMethod,const long,KernelInfo *),
218  MagickMorphologyImageChannel(MagickWand *,const ChannelType,MorphologyMethod,
219    const long,KernelInfo *),
220  MagickMotionBlurImage(MagickWand *,const double,const double,const double),
221  MagickMotionBlurImageChannel(MagickWand *,const ChannelType,const double,
222    const double,const double),
223  MagickNegateImage(MagickWand *,const MagickBooleanType),
224  MagickNegateImageChannel(MagickWand *,const ChannelType,
225    const MagickBooleanType),
226  MagickNewImage(MagickWand *,const unsigned long,const unsigned long,
227    const PixelWand *),
228  MagickNextImage(MagickWand *),
229  MagickNormalizeImage(MagickWand *),
230  MagickNormalizeImageChannel(MagickWand *,const ChannelType),
231  MagickOilPaintImage(MagickWand *,const double),
232  MagickOpaquePaintImage(MagickWand *,const PixelWand *,const PixelWand *,
233    const double,const MagickBooleanType),
234  MagickOpaquePaintImageChannel(MagickWand *,const ChannelType,
235    const PixelWand *,const PixelWand *,const double,const MagickBooleanType),
236  MagickOrderedPosterizeImage(MagickWand *,const char *),
237  MagickOrderedPosterizeImageChannel(MagickWand *,const ChannelType,
238    const char *),
239  MagickTransparentPaintImage(MagickWand *,const PixelWand *,
240    const double,const double,const MagickBooleanType invert),
241  MagickPingImage(MagickWand *,const char *),
242  MagickPingImageBlob(MagickWand *,const void *,const size_t),
243  MagickPingImageFile(MagickWand *,FILE *),
244  MagickPolaroidImage(MagickWand *,const DrawingWand *,const double),
245  MagickPosterizeImage(MagickWand *,const unsigned long,
246    const MagickBooleanType),
247  MagickPreviousImage(MagickWand *),
248  MagickQuantizeImage(MagickWand *,const unsigned long,const ColorspaceType,
249    const unsigned long,const MagickBooleanType,const MagickBooleanType),
250  MagickQuantizeImages(MagickWand *,const unsigned long,const ColorspaceType,
251    const unsigned long,const MagickBooleanType,const MagickBooleanType),
252  MagickRadialBlurImage(MagickWand *,const double),
253  MagickRadialBlurImageChannel(MagickWand *,const ChannelType,const double),
254  MagickRaiseImage(MagickWand *,const unsigned long,const unsigned long,
255    const long,const long,const MagickBooleanType),
256  MagickRandomThresholdImage(MagickWand *,const double,const double),
257  MagickRandomThresholdImageChannel(MagickWand *,const ChannelType,const double,
258    const double),
259  MagickReadImage(MagickWand *,const char *),
260  MagickReadImageBlob(MagickWand *,const void *,const size_t),
261  MagickReadImageFile(MagickWand *,FILE *),
262  MagickRecolorImage(MagickWand *,const unsigned long,const double *),
263  MagickReduceNoiseImage(MagickWand *,const double),
264  MagickRemapImage(MagickWand *,const MagickWand *,const DitherMethod),
265  MagickRemoveImage(MagickWand *),
266  MagickResampleImage(MagickWand *,const double,const double,const FilterTypes,
267    const double),
268  MagickResetImagePage(MagickWand *,const char *),
269  MagickResizeImage(MagickWand *,const unsigned long,const unsigned long,
270    const FilterTypes,const double),
271  MagickRollImage(MagickWand *,const long,const long),
272  MagickRotateImage(MagickWand *,const PixelWand *,const double),
273  MagickSampleImage(MagickWand *,const unsigned long,const unsigned long),
274  MagickScaleImage(MagickWand *,const unsigned long,const unsigned long),
275  MagickSegmentImage(MagickWand *,const ColorspaceType,const MagickBooleanType,
276    const double,const double),
277  MagickSelectiveBlurImage(MagickWand *,const double,const double,const double),
278  MagickSelectiveBlurImageChannel(MagickWand *,const ChannelType,const double,
279    const double,const double),
280  MagickSeparateImageChannel(MagickWand *,const ChannelType),
281  MagickSepiaToneImage(MagickWand *,const double),
282  MagickSetImage(MagickWand *,const MagickWand *),
283  MagickSetImageAlphaChannel(MagickWand *,const AlphaChannelType),
284  MagickSetImageBackgroundColor(MagickWand *,const PixelWand *),
285  MagickSetImageBias(MagickWand *,const double),
286  MagickSetImageBluePrimary(MagickWand *,const double,const double),
287  MagickSetImageBorderColor(MagickWand *,const PixelWand *),
288  MagickSetImageChannelDepth(MagickWand *,const ChannelType,
289    const unsigned long),
290  MagickSetImageClipMask(MagickWand *,const MagickWand *),
291  MagickSetImageColormapColor(MagickWand *,const unsigned long,
292    const PixelWand *),
293  MagickSetImageColorspace(MagickWand *,const ColorspaceType),
294  MagickSetImageCompose(MagickWand *,const CompositeOperator),
295  MagickSetImageCompression(MagickWand *,const CompressionType),
296  MagickSetImageDelay(MagickWand *,const unsigned long),
297  MagickSetImageDepth(MagickWand *,const unsigned long),
298  MagickSetImageDispose(MagickWand *,const DisposeType),
299  MagickSetImageCompressionQuality(MagickWand *,const unsigned long),
300  MagickSetImageExtent(MagickWand *,const unsigned long,const unsigned long),
301  MagickSetImageFilename(MagickWand *,const char *),
302  MagickSetImageFormat(MagickWand *,const char *),
303  MagickSetImageFuzz(MagickWand *,const double),
304  MagickSetImageGamma(MagickWand *,const double),
305  MagickSetImageGravity(MagickWand *,const GravityType),
306  MagickSetImageGreenPrimary(MagickWand *,const double,const double),
307  MagickSetImageInterlaceScheme(MagickWand *,const InterlaceType),
308  MagickSetImageInterpolateMethod(MagickWand *,const InterpolatePixelMethod),
309  MagickSetImageIterations(MagickWand *,const unsigned long),
310  MagickSetImageMatte(MagickWand *,const MagickBooleanType),
311  MagickSetImageMatteColor(MagickWand *,const PixelWand *),
312  MagickSetImageOpacity(MagickWand *,const double),
313  MagickSetImageOrientation(MagickWand *,const OrientationType),
314  MagickSetImagePage(MagickWand *,const unsigned long,const unsigned long,
315    const long,const long),
316  MagickSetImageRedPrimary(MagickWand *,const double,const double),
317  MagickSetImageRenderingIntent(MagickWand *,const RenderingIntent),
318  MagickSetImageResolution(MagickWand *,const double,const double),
319  MagickSetImageScene(MagickWand *,const unsigned long),
320  MagickSetImageTicksPerSecond(MagickWand *,const long),
321  MagickSetImageType(MagickWand *,const ImageType),
322  MagickSetImageUnits(MagickWand *,const ResolutionType),
323  MagickSetImageWhitePoint(MagickWand *,const double,const double),
324  MagickShadeImage(MagickWand *,const MagickBooleanType,const double,
325    const double),
326  MagickShadowImage(MagickWand *,const double,const double,const long,
327    const long),
328  MagickSharpenImage(MagickWand *,const double,const double),
329  MagickSharpenImageChannel(MagickWand *,const ChannelType,const double,
330    const double),
331  MagickShaveImage(MagickWand *,const unsigned long,const unsigned long),
332  MagickShearImage(MagickWand *,const PixelWand *,const double,const double),
333  MagickSigmoidalContrastImage(MagickWand *,const MagickBooleanType,
334    const double,const double),
335  MagickSigmoidalContrastImageChannel(MagickWand *,const ChannelType,
336    const MagickBooleanType,const double,const double),
337  MagickSketchImage(MagickWand *,const double,const double,const double),
338  MagickSolarizeImage(MagickWand *,const double),
339  MagickSparseColorImage(MagickWand *,const ChannelType,const SparseColorMethod,
340    const unsigned long,const double *),
341  MagickSpliceImage(MagickWand *,const unsigned long,const unsigned long,
342    const long,const long),
343  MagickSpreadImage(MagickWand *,const double),
344  MagickStripImage(MagickWand *),
345  MagickSwirlImage(MagickWand *,const double),
346  MagickTintImage(MagickWand *,const PixelWand *,const PixelWand *),
347  MagickTransformImageColorspace(MagickWand *,const ColorspaceType),
348  MagickTransposeImage(MagickWand *),
349  MagickTransverseImage(MagickWand *),
350  MagickThresholdImage(MagickWand *,const double),
351  MagickThresholdImageChannel(MagickWand *,const ChannelType,const double),
352  MagickThumbnailImage(MagickWand *,const unsigned long,const unsigned long),
353  MagickTrimImage(MagickWand *,const double),
354  MagickUniqueImageColors(MagickWand *),
355  MagickUnsharpMaskImage(MagickWand *,const double,const double,const double,
356    const double),
357  MagickUnsharpMaskImageChannel(MagickWand *,const ChannelType,const double,
358    const double,const double,const double),
359  MagickVignetteImage(MagickWand *,const double,const double,
360    const long,const long),
361  MagickWaveImage(MagickWand *,const double,const double),
362  MagickWhiteThresholdImage(MagickWand *,const PixelWand *),
363  MagickWriteImage(MagickWand *,const char *),
364  MagickWriteImageFile(MagickWand *,FILE *),
365  MagickWriteImages(MagickWand *,const char *,const MagickBooleanType),
366  MagickWriteImagesFile(MagickWand *,FILE *);
367
368WandExport MagickProgressMonitor
369  MagickSetImageProgressMonitor(MagickWand *,const MagickProgressMonitor,
370    void *);
371
372extern WandExport MagickWand
373  *MagickAppendImages(MagickWand *,const MagickBooleanType),
374  *MagickAverageImages(MagickWand *),
375  *MagickCoalesceImages(MagickWand *),
376  *MagickCombineImages(MagickWand *,const ChannelType),
377  *MagickCompareImageChannels(MagickWand *,const MagickWand *,const ChannelType,
378    const MetricType,double *),
379  *MagickCompareImages(MagickWand *,const MagickWand *,const MetricType,
380    double *),
381  *MagickCompareImageLayers(MagickWand *,const ImageLayerMethod),
382  *MagickDeconstructImages(MagickWand *),
383  *MagickFxImage(MagickWand *,const char *),
384  *MagickFxImageChannel(MagickWand *,const ChannelType,const char *),
385  *MagickGetImage(MagickWand *),
386  *MagickGetImageClipMask(MagickWand *),
387  *MagickGetImageRegion(MagickWand *,const unsigned long,const unsigned long,
388    const long,const long),
389  *MagickMergeImageLayers(MagickWand *,const ImageLayerMethod),
390  *MagickMorphImages(MagickWand *,const unsigned long),
391  *MagickMontageImage(MagickWand *,const DrawingWand *,const char *,
392    const char *,const MontageMode,const char *),
393  *MagickOptimizeImageLayers(MagickWand *),
394  *MagickPreviewImages(MagickWand *wand,const PreviewType),
395  *MagickSimilarityImage(MagickWand *,const MagickWand *,RectangleInfo *,
396    double *),
397  *MagickSteganoImage(MagickWand *,const MagickWand *,const long),
398  *MagickStereoImage(MagickWand *,const MagickWand *),
399  *MagickTextureImage(MagickWand *,const MagickWand *),
400  *MagickTransformImage(MagickWand *,const char *,const char *);
401
402extern WandExport OrientationType
403  MagickGetImageOrientation(MagickWand *);
404
405extern WandExport PixelWand
406  **MagickGetImageHistogram(MagickWand *,unsigned long *);
407
408extern WandExport RenderingIntent
409  MagickGetImageRenderingIntent(MagickWand *);
410
411extern WandExport ResolutionType
412  MagickGetImageUnits(MagickWand *);
413
414extern WandExport unsigned char
415  *MagickGetImageBlob(MagickWand *,size_t *),
416  *MagickGetImagesBlob(MagickWand *,size_t *);
417
418extern WandExport unsigned long
419  MagickGetImageColors(MagickWand *),
420  MagickGetImageCompressionQuality(MagickWand *),
421  MagickGetImageDelay(MagickWand *),
422  MagickGetImageChannelDepth(MagickWand *,const ChannelType),
423  MagickGetImageDepth(MagickWand *),
424  MagickGetImageHeight(MagickWand *),
425  MagickGetImageIterations(MagickWand *),
426  MagickGetImageScene(MagickWand *),
427  MagickGetImageTicksPerSecond(MagickWand *),
428  MagickGetImageWidth(MagickWand *),
429  MagickGetNumberImages(MagickWand *);
430
431extern WandExport VirtualPixelMethod
432  MagickGetImageVirtualPixelMethod(MagickWand *),
433  MagickSetImageVirtualPixelMethod(MagickWand *,const VirtualPixelMethod);
434
435#if defined(__cplusplus) || defined(c_plusplus)
436}
437#endif
438
439#endif
440