]> granicus.if.org Git - imagemagick/blob - MagickWand/magick-image.h
Added type parameter for Read/Write pixelmask to GetImageMask.
[imagemagick] / MagickWand / magick-image.h
1 /*
2   Copyright 1999-2016 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)
23 extern "C" {
24 #endif
25
26 extern WandExport ChannelFeatures
27   *MagickGetImageFeatures(MagickWand *,const size_t);
28
29 extern WandExport ChannelType
30    MagickSetImageChannelMask(MagickWand *,const ChannelType);
31
32 extern WandExport ChannelStatistics
33   *MagickGetImageStatistics(MagickWand *);
34
35 extern WandExport char
36   *MagickGetImageFilename(MagickWand *),
37   *MagickGetImageFormat(MagickWand *),
38   *MagickGetImageSignature(MagickWand *),
39   *MagickIdentifyImage(MagickWand *);
40
41 extern WandExport ColorspaceType
42   MagickGetImageColorspace(MagickWand *);
43
44 extern WandExport CompositeOperator
45   MagickGetImageCompose(MagickWand *);
46
47 extern WandExport CompressionType
48   MagickGetImageCompression(MagickWand *);
49
50 extern WandExport DisposeType
51   MagickGetImageDispose(MagickWand *);
52
53 extern WandExport double
54   *MagickGetImageDistortions(MagickWand *,const MagickWand *,
55     const MetricType),
56   MagickGetImageFuzz(MagickWand *),
57   MagickGetImageGamma(MagickWand *),
58   MagickGetImageTotalInkDensity(MagickWand *);
59
60 extern WandExport EndianType
61   MagickGetImageEndian(MagickWand *);
62
63 extern WandExport GravityType
64   MagickGetImageGravity(MagickWand *);
65
66 extern WandExport Image
67   *MagickDestroyImage(Image *),
68   *GetImageFromMagickWand(const MagickWand *);
69
70 extern WandExport ImageType
71   MagickGetImageType(MagickWand *),
72   MagickIdentifyImageType(MagickWand *);
73
74 extern WandExport InterlaceType
75   MagickGetImageInterlaceScheme(MagickWand *);
76
77 extern WandExport PixelInterpolateMethod
78   MagickGetImagePixelInterpolateMethod(MagickWand *);
79
80 extern WandExport MagickBooleanType
81   MagickAdaptiveBlurImage(MagickWand *,const double,const double),
82   MagickAdaptiveResizeImage(MagickWand *,const size_t,const size_t),
83   MagickAdaptiveSharpenImage(MagickWand *,const double,const double),
84   MagickAdaptiveThresholdImage(MagickWand *,const size_t,const size_t,
85     const double),
86   MagickAddImage(MagickWand *,const MagickWand *),
87   MagickAddNoiseImage(MagickWand *,const NoiseType,const double),
88   MagickAffineTransformImage(MagickWand *,const DrawingWand *),
89   MagickAnnotateImage(MagickWand *,const DrawingWand *,const double,
90     const double,const double,const char *),
91   MagickAnimateImages(MagickWand *,const char *),
92   MagickAutoGammaImage(MagickWand *),
93   MagickAutoLevelImage(MagickWand *),
94   MagickAutoOrientImage(MagickWand *),
95   MagickBlackThresholdImage(MagickWand *,const PixelWand *),
96   MagickBlueShiftImage(MagickWand *,const double),
97   MagickBlurImage(MagickWand *,const double,const double),
98   MagickBorderImage(MagickWand *,const PixelWand *,const size_t,const size_t,
99     const CompositeOperator compose),
100   MagickBrightnessContrastImage(MagickWand *,const double,const double),
101   MagickCharcoalImage(MagickWand *,const double,const double),
102   MagickChopImage(MagickWand *,const size_t,const size_t,const ssize_t,
103     const ssize_t),
104   MagickClampImage(MagickWand *),
105   MagickClipImage(MagickWand *),
106   MagickClipImagePath(MagickWand *,const char *,const MagickBooleanType),
107   MagickClutImage(MagickWand *,const MagickWand *,const PixelInterpolateMethod),
108   MagickColorDecisionListImage(MagickWand *,const char *),
109   MagickColorizeImage(MagickWand *,const PixelWand *,const PixelWand *),
110   MagickColorMatrixImage(MagickWand *,const KernelInfo *),
111   MagickCommentImage(MagickWand *,const char *),
112   MagickCompositeImage(MagickWand *,const MagickWand *,const CompositeOperator,
113     const MagickBooleanType,const ssize_t,const ssize_t),
114   MagickCompositeImageGravity(MagickWand *,const MagickWand *,const CompositeOperator,
115     const GravityType),
116   MagickCompositeLayers(MagickWand *,const MagickWand *,const CompositeOperator,
117     const ssize_t,const ssize_t),
118   MagickConstituteImage(MagickWand *,const size_t,const size_t,const char *,
119     const StorageType,const void *),
120   MagickContrastImage(MagickWand *,const MagickBooleanType),
121   MagickContrastStretchImage(MagickWand *,const double,const double),
122   MagickConvolveImage(MagickWand *,const KernelInfo *),
123   MagickCropImage(MagickWand *,const size_t,const size_t,const ssize_t,
124     const ssize_t),
125   MagickCycleColormapImage(MagickWand *,const ssize_t),
126   MagickDecipherImage(MagickWand *,const char *),
127   MagickDeskewImage(MagickWand *,const double),
128   MagickDespeckleImage(MagickWand *),
129   MagickDisplayImage(MagickWand *,const char *),
130   MagickDisplayImages(MagickWand *,const char *),
131   MagickDistortImage(MagickWand *,const DistortImageMethod,const size_t,
132     const double *,const MagickBooleanType),
133   MagickDrawImage(MagickWand *,const DrawingWand *),
134   MagickEdgeImage(MagickWand *,const double),
135   MagickEmbossImage(MagickWand *,const double,const double),
136   MagickEncipherImage(MagickWand *,const char *),
137   MagickEnhanceImage(MagickWand *),
138   MagickEqualizeImage(MagickWand *),
139   MagickEvaluateImage(MagickWand *,const MagickEvaluateOperator,const double),
140   MagickExportImagePixels(MagickWand *,const ssize_t,const ssize_t,
141     const size_t,const size_t,const char *,const StorageType,void *),
142   MagickExtentImage(MagickWand *,const size_t,const size_t,const ssize_t,
143     const ssize_t),
144   MagickFlipImage(MagickWand *),
145   MagickFloodfillPaintImage(MagickWand *,const PixelWand *,const double,
146     const PixelWand *,const ssize_t,const ssize_t,const MagickBooleanType),
147   MagickFlopImage(MagickWand *),
148   MagickForwardFourierTransformImage(MagickWand *,const MagickBooleanType),
149   MagickFrameImage(MagickWand *,const PixelWand *,const size_t,const size_t,
150     const ssize_t,const ssize_t,const CompositeOperator),
151   MagickFunctionImage(MagickWand *,const MagickFunction,const size_t,
152     const double *),
153   MagickGammaImage(MagickWand *,const double),
154   MagickGaussianBlurImage(MagickWand *,const double,const double),
155   MagickGetImageAlphaChannel(MagickWand *),
156   MagickGetImageBackgroundColor(MagickWand *,PixelWand *),
157   MagickGetImageBluePrimary(MagickWand *,double *,double *),
158   MagickGetImageBorderColor(MagickWand *,PixelWand *),
159   MagickGetImageKurtosis(MagickWand *,double *,double *),
160   MagickGetImageMean(MagickWand *,double *,double *),
161   MagickGetImageRange(MagickWand *,double *,double *),
162   MagickGetImageColormapColor(MagickWand *,const size_t,PixelWand *),
163   MagickGetImageDistortion(MagickWand *,const MagickWand *,const MetricType,
164     double *),
165   MagickGetImageGreenPrimary(MagickWand *,double *,double *),
166   MagickGetImageMatteColor(MagickWand *,PixelWand *),
167   MagickGetImageLength(MagickWand *,MagickSizeType *),
168   MagickGetImagePage(MagickWand *,size_t *,size_t *,ssize_t *,
169     ssize_t *),
170   MagickGetImagePixelColor(MagickWand *,const ssize_t,const ssize_t,
171     PixelWand *),
172   MagickGetImageRange(MagickWand *,double *,double *),
173   MagickGetImageRedPrimary(MagickWand *,double *,double *),
174   MagickGetImageResolution(MagickWand *,double *,double *),
175   MagickGetImageWhitePoint(MagickWand *,double *,double *),
176   MagickHaldClutImage(MagickWand *,const MagickWand *),
177   MagickHasNextImage(MagickWand *),
178   MagickHasPreviousImage(MagickWand *),
179   MagickImplodeImage(MagickWand *,const double,const PixelInterpolateMethod),
180   MagickImportImagePixels(MagickWand *,const ssize_t,const ssize_t,const size_t,
181     const size_t,const char *,const StorageType,const void *),
182   MagickInterpolativeResizeImage(MagickWand *,const size_t,const size_t,
183     const PixelInterpolateMethod),
184   MagickInverseFourierTransformImage(MagickWand *,MagickWand *,
185     const MagickBooleanType),
186   MagickLabelImage(MagickWand *,const char *),
187   MagickLevelImage(MagickWand *,const double,const double,const double),
188   MagickLinearStretchImage(MagickWand *,const double,const double),
189   MagickLiquidRescaleImage(MagickWand *,const size_t,const size_t,const double,
190     const double),
191   MagickLocalContrastImage(MagickWand *,const double,const double),
192   MagickMagnifyImage(MagickWand *),
193   MagickMedianConvolveImage(MagickWand *,const double),
194   MagickMinifyImage(MagickWand *),
195   MagickModeImage(MagickWand *,const double),
196   MagickModulateImage(MagickWand *,const double,const double,const double),
197   MagickMorphologyImage(MagickWand *,MorphologyMethod,const ssize_t,
198     KernelInfo *),
199   MagickMotionBlurImage(MagickWand *,const double,const double,const double),
200   MagickNegateImage(MagickWand *,const MagickBooleanType),
201   MagickNewImage(MagickWand *,const size_t,const size_t,const PixelWand *),
202   MagickNextImage(MagickWand *),
203   MagickNormalizeImage(MagickWand *),
204   MagickOilPaintImage(MagickWand *,const double,const double),
205   MagickOpaquePaintImage(MagickWand *,const PixelWand *,const PixelWand *,
206     const double,const MagickBooleanType),
207   MagickOptimizeImageTransparency(MagickWand *),
208   MagickOrderedPosterizeImage(MagickWand *,const char *),
209   MagickTransparentPaintImage(MagickWand *,const PixelWand *,
210     const double,const double,const MagickBooleanType invert),
211   MagickPingImage(MagickWand *,const char *),
212   MagickPingImageBlob(MagickWand *,const void *,const size_t),
213   MagickPingImageFile(MagickWand *,FILE *),
214   MagickPolaroidImage(MagickWand *,const DrawingWand *,const char *,
215     const double,const PixelInterpolateMethod),
216   MagickPosterizeImage(MagickWand *,const size_t,const DitherMethod),
217   MagickPreviousImage(MagickWand *),
218   MagickQuantizeImage(MagickWand *,const size_t,const ColorspaceType,
219     const size_t,const DitherMethod,const MagickBooleanType),
220   MagickQuantizeImages(MagickWand *,const size_t,const ColorspaceType,
221     const size_t,const DitherMethod,const MagickBooleanType),
222   MagickRotationalBlurImage(MagickWand *,const double),
223   MagickRaiseImage(MagickWand *,const size_t,const size_t,const ssize_t,
224     const ssize_t,const MagickBooleanType),
225   MagickRandomThresholdImage(MagickWand *,const double,const double),
226   MagickReadImage(MagickWand *,const char *),
227   MagickReadImageBlob(MagickWand *,const void *,const size_t),
228   MagickReadImageFile(MagickWand *,FILE *),
229   MagickReduceNoiseImage(MagickWand *,const double),
230   MagickRemapImage(MagickWand *,const MagickWand *,const DitherMethod),
231   MagickRemoveImage(MagickWand *),
232   MagickResampleImage(MagickWand *,const double,const double,const FilterTypes),
233   MagickResetImagePage(MagickWand *,const char *),
234   MagickResizeImage(MagickWand *,const size_t,const size_t,const FilterTypes),
235   MagickRollImage(MagickWand *,const ssize_t,const ssize_t),
236   MagickRotateImage(MagickWand *,const PixelWand *,const double),
237   MagickSampleImage(MagickWand *,const size_t,const size_t),
238   MagickScaleImage(MagickWand *,const size_t,const size_t),
239   MagickSegmentImage(MagickWand *,const ColorspaceType,const MagickBooleanType,
240     const double,const double),
241   MagickSelectiveBlurImage(MagickWand *,const double,const double,const double),
242   MagickSeparateImage(MagickWand *,const ChannelType),
243   MagickSepiaToneImage(MagickWand *,const double),
244   MagickSetImage(MagickWand *,const MagickWand *),
245   MagickSetImageAlphaChannel(MagickWand *,const AlphaChannelOption),
246   MagickSetImageBackgroundColor(MagickWand *,const PixelWand *),
247   MagickSetImageBluePrimary(MagickWand *,const double,const double),
248   MagickSetImageBorderColor(MagickWand *,const PixelWand *),
249   MagickSetImageColor(MagickWand *,const PixelWand *),
250   MagickSetImageColormapColor(MagickWand *,const size_t,
251     const PixelWand *),
252   MagickSetImageColorspace(MagickWand *,const ColorspaceType),
253   MagickSetImageCompose(MagickWand *,const CompositeOperator),
254   MagickSetImageCompression(MagickWand *,const CompressionType),
255   MagickSetImageDelay(MagickWand *,const size_t),
256   MagickSetImageDepth(MagickWand *,const size_t),
257   MagickSetImageDispose(MagickWand *,const DisposeType),
258   MagickSetImageCompressionQuality(MagickWand *,const size_t),
259   MagickSetImageEndian(MagickWand *,const EndianType),
260   MagickSetImageExtent(MagickWand *,const size_t,const size_t),
261   MagickSetImageFilename(MagickWand *,const char *),
262   MagickSetImageFormat(MagickWand *,const char *),
263   MagickSetImageFuzz(MagickWand *,const double),
264   MagickSetImageGamma(MagickWand *,const double),
265   MagickSetImageGravity(MagickWand *,const GravityType),
266   MagickSetImageGreenPrimary(MagickWand *,const double,const double),
267   MagickSetImageInterlaceScheme(MagickWand *,const InterlaceType),
268   MagickSetImagePixelInterpolateMethod(MagickWand *,
269     const PixelInterpolateMethod),
270   MagickSetImageIterations(MagickWand *,const size_t),
271   MagickSetImageMatte(MagickWand *,const MagickBooleanType),
272   MagickSetImageMatteColor(MagickWand *,const PixelWand *),
273   MagickSetImageAlpha(MagickWand *,const double),
274   MagickSetImageOrientation(MagickWand *,const OrientationType),
275   MagickSetImagePage(MagickWand *,const size_t,const size_t,const ssize_t,
276     const ssize_t),
277   MagickSetImageRedPrimary(MagickWand *,const double,const double),
278   MagickSetImageRenderingIntent(MagickWand *,const RenderingIntent),
279   MagickSetImageResolution(MagickWand *,const double,const double),
280   MagickSetImageScene(MagickWand *,const size_t),
281   MagickSetImageTicksPerSecond(MagickWand *,const ssize_t),
282   MagickSetImageType(MagickWand *,const ImageType),
283   MagickSetImageUnits(MagickWand *,const ResolutionType),
284   MagickSetImageWhitePoint(MagickWand *,const double,const double),
285   MagickShadeImage(MagickWand *,const MagickBooleanType,const double,
286     const double),
287   MagickShadowImage(MagickWand *,const double,const double,const ssize_t,
288     const ssize_t),
289   MagickSharpenImage(MagickWand *,const double,const double),
290   MagickShaveImage(MagickWand *,const size_t,const size_t),
291   MagickShearImage(MagickWand *,const PixelWand *,const double,const double),
292   MagickSigmoidalContrastImage(MagickWand *,const MagickBooleanType,
293     const double,const double),
294   MagickSketchImage(MagickWand *,const double,const double,const double),
295   MagickSolarizeImage(MagickWand *,const double),
296   MagickSparseColorImage(MagickWand *,const SparseColorMethod,const size_t,
297     const double *),
298   MagickSpliceImage(MagickWand *,const size_t,const size_t,const ssize_t,
299     const ssize_t),
300   MagickSpreadImage(MagickWand *,const PixelInterpolateMethod,const double),
301   MagickStatisticImage(MagickWand *,const StatisticType,const size_t,
302     const size_t),
303   MagickStripImage(MagickWand *),
304   MagickSwirlImage(MagickWand *,const double,const PixelInterpolateMethod),
305   MagickTintImage(MagickWand *,const PixelWand *,const PixelWand *),
306   MagickTransformImageColorspace(MagickWand *,const ColorspaceType),
307   MagickTransposeImage(MagickWand *),
308   MagickTransverseImage(MagickWand *),
309   MagickThresholdImage(MagickWand *,const double),
310   MagickThresholdImageChannel(MagickWand *,const ChannelType,const double),
311   MagickThumbnailImage(MagickWand *,const size_t,const size_t),
312   MagickTrimImage(MagickWand *,const double),
313   MagickUniqueImageColors(MagickWand *),
314   MagickUnsharpMaskImage(MagickWand *,const double,const double,const double,
315     const double),
316   MagickVignetteImage(MagickWand *,const double,const double,const ssize_t,
317     const ssize_t),
318   MagickWaveImage(MagickWand *,const double,const double,
319     const PixelInterpolateMethod),
320   MagickWhiteThresholdImage(MagickWand *,const PixelWand *),
321   MagickWriteImage(MagickWand *,const char *),
322   MagickWriteImageFile(MagickWand *,FILE *),
323   MagickWriteImages(MagickWand *,const char *,const MagickBooleanType),
324   MagickWriteImagesFile(MagickWand *,FILE *);
325
326 extern WandExport MagickProgressMonitor
327   MagickSetImageProgressMonitor(MagickWand *,const MagickProgressMonitor,
328     void *);
329
330 extern WandExport MagickWand
331   *MagickAppendImages(MagickWand *,const MagickBooleanType),
332   *MagickChannelFxImage(MagickWand *,const char *),
333   *MagickCoalesceImages(MagickWand *),
334   *MagickCombineImages(MagickWand *,const ColorspaceType),
335   *MagickCompareImages(MagickWand *,const MagickWand *,const MetricType,
336     double *),
337   *MagickCompareImagesLayers(MagickWand *,const LayerMethod),
338   *MagickDeconstructImages(MagickWand *),
339   *MagickEvaluateImages(MagickWand *,const MagickEvaluateOperator),
340   *MagickFxImage(MagickWand *,const char *),
341   *MagickGetImage(MagickWand *),
342   *MagickGetImageMask(MagickWand *,const PixelMask),
343   *MagickGetImageRegion(MagickWand *,const size_t,const size_t,const ssize_t,
344     const ssize_t),
345   *MagickMergeImageLayers(MagickWand *,const LayerMethod),
346   *MagickMorphImages(MagickWand *,const size_t),
347   *MagickMontageImage(MagickWand *,const DrawingWand *,const char *,
348     const char *,const MontageMode,const char *),
349   *MagickOptimizeImageLayers(MagickWand *),
350   *MagickPreviewImages(MagickWand *wand,const PreviewType),
351   *MagickSimilarityImage(MagickWand *,const MagickWand *,const MetricType,
352     const double,RectangleInfo *,double *),
353   *MagickSmushImages(MagickWand *,const MagickBooleanType,const ssize_t),
354   *MagickSteganoImage(MagickWand *,const MagickWand *,const ssize_t),
355   *MagickStereoImage(MagickWand *,const MagickWand *),
356   *MagickTextureImage(MagickWand *,const MagickWand *),
357   *MagickTransformImage(MagickWand *,const char *,const char *);
358
359 extern WandExport OrientationType
360   MagickGetImageOrientation(MagickWand *);
361
362 extern WandExport PixelWand
363   **MagickGetImageHistogram(MagickWand *,size_t *);
364
365 extern WandExport RenderingIntent
366   MagickGetImageRenderingIntent(MagickWand *);
367
368 extern WandExport ResolutionType
369   MagickGetImageUnits(MagickWand *);
370
371 extern WandExport size_t
372   MagickGetImageColors(MagickWand *),
373   MagickGetImageCompressionQuality(MagickWand *),
374   MagickGetImageDelay(MagickWand *),
375   MagickGetImageDepth(MagickWand *),
376   MagickGetImageHeight(MagickWand *),
377   MagickGetImageIterations(MagickWand *),
378   MagickGetImageScene(MagickWand *),
379   MagickGetImageTicksPerSecond(MagickWand *),
380   MagickGetImageWidth(MagickWand *),
381   MagickGetNumberImages(MagickWand *);
382
383 extern WandExport unsigned char
384   *MagickGetImageBlob(MagickWand *,size_t *),
385   *MagickGetImagesBlob(MagickWand *,size_t *);
386
387 extern WandExport VirtualPixelMethod
388   MagickGetImageVirtualPixelMethod(MagickWand *),
389   MagickSetImageVirtualPixelMethod(MagickWand *,const VirtualPixelMethod);
390
391 #if defined(__cplusplus) || defined(c_plusplus)
392 }
393 #endif
394
395 #endif