]> granicus.if.org Git - imagemagick/blob - magick/fx.h
(no commit message)
[imagemagick] / magick / fx.h
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   MagickCore image f/x methods.
17 */
18 #ifndef _MAGICKCORE_FX_H
19 #define _MAGICKCORE_FX_H
20
21 #if defined(__cplusplus) || defined(c_plusplus)
22 extern "C" {
23 #endif
24
25 #include "magick/draw.h"
26
27 typedef enum
28 {
29   UndefinedEvaluateOperator,
30   AddEvaluateOperator,
31   AndEvaluateOperator,
32   DivideEvaluateOperator,
33   LeftShiftEvaluateOperator,
34   MaxEvaluateOperator,
35   MinEvaluateOperator,
36   MultiplyEvaluateOperator,
37   OrEvaluateOperator,
38   RightShiftEvaluateOperator,
39   SetEvaluateOperator,
40   SubtractEvaluateOperator,
41   XorEvaluateOperator,
42   PowEvaluateOperator,
43   LogEvaluateOperator,
44   ThresholdEvaluateOperator,
45   ThresholdBlackEvaluateOperator,
46   ThresholdWhiteEvaluateOperator,
47   GaussianNoiseEvaluateOperator,
48   ImpulseNoiseEvaluateOperator,
49   LaplacianNoiseEvaluateOperator,
50   MultiplicativeNoiseEvaluateOperator,
51   PoissonNoiseEvaluateOperator,
52   UniformNoiseEvaluateOperator,
53   CosineEvaluateOperator,
54   SineEvaluateOperator,
55   AddModulusEvaluateOperator
56 } MagickEvaluateOperator;
57
58 typedef enum
59 {
60   UndefinedFunction,
61   PolynomialFunction,
62   SinusoidFunction,
63   ArcsinFunction,
64   ArctanFunction
65 } MagickFunction;
66
67 typedef enum
68 {
69   UndefinedNoise,
70   UniformNoise,
71   GaussianNoise,
72   MultiplicativeGaussianNoise,
73   ImpulseNoise,
74   LaplacianNoise,
75   PoissonNoise,
76   RandomNoise
77 } NoiseType;
78
79 extern MagickExport Image
80   *AddNoiseImage(const Image *,const NoiseType,ExceptionInfo *),
81   *AddNoiseImageChannel(const Image *,const ChannelType,const NoiseType,
82     ExceptionInfo *),
83   *BlueShiftImage(const Image *,const double,ExceptionInfo *),
84   *CharcoalImage(const Image *,const double,const double,ExceptionInfo *),
85   *ColorizeImage(const Image *,const char *,const PixelPacket,ExceptionInfo *),
86   *FxImage(const Image *,const char *,ExceptionInfo *),
87   *FxImageChannel(const Image *,const ChannelType,const char *,ExceptionInfo *),
88   *ImplodeImage(const Image *,const double,ExceptionInfo *),
89   *MorphImages(const Image *,const unsigned long,ExceptionInfo *),
90   *PolaroidImage(const Image *,const DrawInfo *,const double,ExceptionInfo *),
91   *RecolorImage(const Image *,const unsigned long,const double *,
92     ExceptionInfo *),
93   *SepiaToneImage(const Image *,const double,ExceptionInfo *),
94   *ShadowImage(const Image *,const double,const double,const long,const long,
95     ExceptionInfo *),
96   *SketchImage(const Image *,const double,const double,const double,
97     ExceptionInfo *),
98   *SteganoImage(const Image *,const Image *,ExceptionInfo *),
99   *StereoImage(const Image *,const Image *,ExceptionInfo *),
100   *StereoAnaglyphImage(const Image *,const Image *,const long,const long,
101      ExceptionInfo *),
102   *SwirlImage(const Image *,double,ExceptionInfo *),
103   *TintImage(const Image *,const char *,const PixelPacket,ExceptionInfo *),
104   *VignetteImage(const Image *,const double,const double,const long,
105     const long,ExceptionInfo *),
106   *WaveImage(const Image *,const double,const double,ExceptionInfo *);
107
108 extern MagickExport MagickBooleanType
109   EvaluateImage(Image *,const MagickEvaluateOperator,const double,
110     ExceptionInfo *),
111   EvaluateImageChannel(Image *,const ChannelType,const MagickEvaluateOperator,
112     const double,ExceptionInfo *),
113   FunctionImage(Image *,const MagickFunction,const unsigned long,const double *,
114     ExceptionInfo *),
115   FunctionImageChannel(Image *,const ChannelType,const MagickFunction,
116     const unsigned long,const double *,ExceptionInfo *),
117   PlasmaImage(Image *,const SegmentInfo *,unsigned long,unsigned long),
118   SolarizeImage(Image *,const double);
119
120 #if defined(__cplusplus) || defined(c_plusplus)
121 }
122 #endif
123
124 #endif