summaryrefslogtreecommitdiff
path: root/dmagick/c/accelerate.d
blob: ef36c126afee2407e4f1985d12eace14f4717372 (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
module dmagick.c.accelerate;

import dmagick.c.colorspace;
import dmagick.c.composite;
import dmagick.c.exception;
import dmagick.c.fx;
import dmagick.c.geometry;
import dmagick.c.image;
import dmagick.c.magickType;
import dmagick.c.magickVersion;
import dmagick.c.morphology;
import dmagick.c.pixel;
import dmagick.c.statistic;

extern(C)
{
	static if ( MagickLibVersion >= 0x689 )
	{
		MagickBooleanType AccelerateCompositeImage(Image*, const ChannelType, const CompositeOperator, const(Image)*, const ssize_t, const ssize_t, const float, const float, ExceptionInfo*);
		MagickBooleanType AccelerateContrastStretchImageChannel(Image*, const ChannelType, const double, const double, ExceptionInfo*);
		MagickBooleanType AccelerateGrayscaleImage(Image*, const PixelIntensityMethod, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x689 && MagickLibVersion < 0x694 )
	{
		MagickBooleanType AccelerateRandomImage(Image*, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x688 )
	{
		MagickBooleanType AccelerateContrastImage(Image*, const MagickBooleanType, ExceptionInfo*);
		MagickBooleanType AccelerateEqualizeImage(Image*, const ChannelType, ExceptionInfo*);
		MagickBooleanType AccelerateFunctionImage(Image*, const ChannelType, const MagickFunction, const size_t, const(double)*, ExceptionInfo*);
		MagickBooleanType AccelerateModulateImage(Image*, double, double, double, ColorspaceType, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x688 )
	{
		Image* AccelerateAddNoiseImage(const(Image)*, const ChannelType, const NoiseType, ExceptionInfo*);
		Image* AccelerateBlurImage(const(Image)*, const ChannelType, const double, const double, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x687 )
	{
		Image* AccelerateConvolveImageChannel(const(Image)*, const ChannelType, const(KernelInfo)*, ExceptionInfo*);
		Image* AccelerateDespeckleImage(const(Image)*, ExceptionInfo*);
		Image* AccelerateRadialBlurImage(const(Image)*, const ChannelType, const double, ExceptionInfo*);
		//Image* AccelerateResizeImage(const(Image)*, const size_t, const size_t, const(ResizeFilter)*, ExceptionInfo*);
		Image* AccelerateUnsharpMaskImage(const(Image)*, const ChannelType, const double, const double, const double, const double, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x694 )
	{
		Image* AccelerateWaveletDenoiseImage(const(Image)*, const double, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x693 )
	{
		Image* AccelerateLocalContrastImage(const(Image)*, const double, const double, ExceptionInfo*);
	}

	static if ( MagickLibVersion >= 0x689 )
	{
		Image* AccelerateMotionBlurImage(const Image*, const ChannelType, const(double)*, const size_t, const(OffsetInfo)*, ExceptionInfo*);
	}

	/* legacy, do not use */
	MagickBooleanType AccelerateConvolveImage(const(Image)*, const(KernelInfo)*, Image*, ExceptionInfo*);
	static if ( MagickLibVersion >= 0x689 )
	{
		MagickBooleanType AccelerateNegateImageChannel(Image*, const ChannelType, const MagickBooleanType, ExceptionInfo*);
	}
}