summaryrefslogtreecommitdiff
path: root/dmagick/c/effect.d
blob: f70ae63fe8151b754495fd10cfc7ff4a2c323bcb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
module dmagick.c.effect;

import dmagick.c.exception;
import dmagick.c.image;
import dmagick.c.magickType;
import dmagick.c.magickVersion;
import dmagick.c.morphology;

extern(C)
{
	/**
	 * Image preview type.
	 */
	enum PreviewType
	{
		UndefinedPreview,       ///
		RotatePreview,          /// ditto
		ShearPreview,           /// ditto
		RollPreview,            /// ditto
		HuePreview,             /// ditto
		SaturationPreview,      /// ditto
		BrightnessPreview,      /// ditto
		GammaPreview,           /// ditto
		SpiffPreview,           /// ditto
		DullPreview,            /// ditto
		GrayscalePreview,       /// ditto
		QuantizePreview,        /// ditto
		DespecklePreview,       /// ditto
		ReduceNoisePreview,     /// ditto
		AddNoisePreview,        /// ditto
		SharpenPreview,         /// ditto
		BlurPreview,            /// ditto
		ThresholdPreview,       /// ditto
		EdgeDetectPreview,      /// ditto
		SpreadPreview,          /// ditto
		SolarizePreview,        /// ditto
		ShadePreview,           /// ditto
		RaisePreview,           /// ditto
		SegmentPreview,         /// ditto
		SwirlPreview,           /// ditto
		ImplodePreview,         /// ditto
		WavePreview,            /// ditto
		OilPaintPreview,        /// ditto
		CharcoalDrawingPreview, /// ditto
		JPEGPreview             /// ditto
	}

	version(D_Ddoc)
	{
		/**
		 * The statistic method to apply.
		 */
		enum StatisticType
		{
			UndefinedStatistic, /// 
			GradientStatistic,  /// Maximum difference in area.
			MaximumStatistic,   /// Maximum value per channel in neighborhood.
			MeanStatistic,      /// Average value per channel in neighborhood.
			MedianStatistic,    /// Median value per channel in neighborhood.
			MinimumStatistic,   /// Minimum value per channel in neighborhood.
			ModeStatistic,      /// Mode (most frequent) value per channel in neighborhood.
			NonpeakStatistic,   /// Value just before or after the median value per channel in neighborhood.
			StandardDeviationStatistic  /// 
		}
	}
	else
	{
		mixin(
		{
			string types = "enum StatisticType
			{
				UndefinedStatistic,";

				static if ( MagickLibVersion >= 0x670 )
				{
					types ~= "GradientStatistic,";
				}

				types ~= "
				MaximumStatistic,
				MeanStatistic,
				MedianStatistic,
				MinimumStatistic,
				ModeStatistic,
				NonpeakStatistic,";

				static if ( MagickLibVersion >= 0x670 )
				{
					types ~= "StandardDeviationStatistic,";
				}

				types ~= "
			}";

			return types;
		}());
	}

	Image* AdaptiveBlurImage(const(Image)*, const double, const double, ExceptionInfo*);
	Image* AdaptiveBlurImageChannel(const(Image)*, const ChannelType, const double, const double, ExceptionInfo*);
	Image* AdaptiveSharpenImage(const(Image)*, const double, const double, ExceptionInfo*);
	Image* AdaptiveSharpenImageChannel(const(Image)*, const ChannelType, const double, const double, ExceptionInfo*);
	Image* BlurImage(const(Image)*, const double, const double, ExceptionInfo*);
	Image* BlurImageChannel(const(Image)*, const ChannelType, const double, const double, ExceptionInfo*);
	Image* ConvolveImage(const(Image)*, const size_t, const(double)*, ExceptionInfo*);
	Image* ConvolveImageChannel(const(Image)*, const ChannelType, const size_t, const(double)*, ExceptionInfo*);
	Image* DespeckleImage(const(Image)*, ExceptionInfo*);
	Image* EdgeImage(const(Image)*, const double, ExceptionInfo*);
	Image* EmbossImage(const(Image)*, const double, const double, ExceptionInfo*);
	Image* FilterImage(const(Image)*, const(KernelInfo)*, ExceptionInfo*);
	Image* FilterImageChannel(const(Image)*, const ChannelType, const(KernelInfo)*, ExceptionInfo*);
	Image* GaussianBlurImage(const(Image)*, const double, const double, ExceptionInfo*);
	Image* GaussianBlurImageChannel(const(Image)*, const ChannelType, const double, const double, ExceptionInfo*);

	static if ( MagickLibVersion < 0x669 )
	{
		Image* MedianFilterImage(const(Image)*, const double, ExceptionInfo*);
	}

	static if ( MagickLibVersion == 0x668 )
	{
		Image* ModeImage(const(Image)*, const double, ExceptionInfo*);
	}

	Image* MotionBlurImage(const(Image)*, const double, const double, const double, ExceptionInfo*);
	Image* MotionBlurImageChannel(const(Image)*, const ChannelType, const double, const double, const double, ExceptionInfo*);
	Image* PreviewImage(const(Image)*, const PreviewType, ExceptionInfo*);
	Image* RadialBlurImage(const(Image)*, const double, ExceptionInfo*);
	Image* RadialBlurImageChannel(const(Image)*, const ChannelType, const double, ExceptionInfo*);

	static if ( MagickLibVersion < 0x669 )
	{
		Image* ReduceNoiseImage(const(Image)*, const double, ExceptionInfo*);
	}

	Image* SelectiveBlurImage(const(Image)*, const double, const double, const double, ExceptionInfo*);
	Image* SelectiveBlurImageChannel(const(Image)*, const ChannelType, const double, const double, const double, ExceptionInfo*);
	Image* ShadeImage(const(Image)*, const MagickBooleanType, const double, const double, ExceptionInfo*);
	Image* SharpenImage(const(Image)*, const double, const double, ExceptionInfo*);
	Image* SharpenImageChannel(const(Image)*, const ChannelType ,const double, const double, ExceptionInfo*);
	Image* SpreadImage(const(Image)*, const double, ExceptionInfo*);

	static if ( MagickLibVersion >= 0x669 )
	{
		Image* StatisticImage(const(Image)*, const StatisticType, const size_t, const size_t, ExceptionInfo*);
		Image* StatisticImageChannel(const(Image)*, const ChannelType, const StatisticType, const size_t, const size_t, ExceptionInfo*);
	}

	Image* UnsharpMaskImage(const(Image)*, const double, const double, const double, const double, ExceptionInfo*);
	Image* UnsharpMaskImageChannel(const(Image)*, const ChannelType, const double, const double, const double, const double, ExceptionInfo*);
}