summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Wey2012-10-20 19:58:00 +0200
committerMike Wey2012-10-20 19:58:00 +0200
commitad57d01f268a8afa4e5f437922e967e43c4ce1f7 (patch)
tree22b2bbdb5ad1c22b46b0519bd339f57c128cbff5
parentff0b85cca822d278b9967c29cd623330ce818593 (diff)
Update to Imagemagick 6.8.0.ImageMagick_6.8.0
-rw-r--r--GNUmakefile2
-rw-r--r--dmagick/c/colorspace.d12
-rw-r--r--dmagick/c/fx.d5
-rw-r--r--dmagick/c/magickType.d28
-rw-r--r--dmagick/c/magickVersion.d9
-rw-r--r--dmagick/c/pixel.d12
6 files changed, 60 insertions, 8 deletions
diff --git a/GNUmakefile b/GNUmakefile
index e974bbf..1eac820 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -49,7 +49,7 @@ ifneq ("$(QUANTUMDEPTH)","Q16")
VERSIONS+= -version=$(subst Q,Quantum,$(QUANTUMDEPTH))
endif
-ifneq ("$(MAGICKVERSION)","679")
+ifneq ("$(MAGICKVERSION)","680")
VERSIONS+= -version=MagickCore_$(MAGICKVERSION)
endif
diff --git a/dmagick/c/colorspace.d b/dmagick/c/colorspace.d
index 7f5a060..00c6240 100644
--- a/dmagick/c/colorspace.d
+++ b/dmagick/c/colorspace.d
@@ -155,7 +155,17 @@ extern(C)
* perceptual uniformity of Luv, and the simplicity of specification
* of HSV and HSL.
*/
- HCLColorspace
+ HCLColorspace,
+
+ /** ditto */
+ LCHColorspace,
+
+ /**
+ * LMS is a color space represented by the response of the three types
+ * of cones of the human eye, named after their responsivity
+ * (sensitivity) at long, medium and short wavelengths.
+ */
+ LMSColorspace
}
MagickBooleanType RGBTransformImage(Image*, const ColorspaceType);
diff --git a/dmagick/c/fx.d b/dmagick/c/fx.d
index 2da4806..08292eb 100644
--- a/dmagick/c/fx.d
+++ b/dmagick/c/fx.d
@@ -62,4 +62,9 @@ extern(C)
MagickBooleanType PlasmaImage(Image*, const(SegmentInfo)*, size_t, size_t);
MagickBooleanType SolarizeImage(Image*, const double);
+
+ static if (MagickLibVersion >= 0x680)
+ {
+ MagickBooleanType SolarizeImageChannel(Image*, const ChannelType, const double, ExceptionInfo*);
+ }
}
diff --git a/dmagick/c/magickType.d b/dmagick/c/magickType.d
index 4e770ea..e23a918 100644
--- a/dmagick/c/magickType.d
+++ b/dmagick/c/magickType.d
@@ -10,8 +10,13 @@ extern (C)
* Quantum is an alias for the smallest integer that can hold
* a pixel channel.
*/
- alias ubyte Quantum;
- alias double MagickRealType;
+ alias ubyte Quantum;
+ alias ptrdiff_t SignedQuantum;
+
+ static if ( MagickLibVersion >= 0x680 )
+ alias float MagickRealType;
+ else
+ alias double MagickRealType;
/**
* The largest value that fits in a Quantum, This is the same
@@ -34,6 +39,7 @@ extern (C)
* a pixel channel.
*/
alias uint Quantum;
+ alias double SignedQuantum;
alias double MagickRealType;
/**
@@ -57,6 +63,7 @@ extern (C)
* a pixel channel.
*/
alias double Quantum;
+ alias double SignedQuantum;
//real seems to be the same size as long double for
//dmc and dmd on windows and for dmd and gcc on linux.
alias real MagickRealType;
@@ -81,8 +88,13 @@ extern (C)
* Quantum is an alias for the smallest integer that can hold
* a pixel channel.
*/
- alias ushort Quantum;
- alias double MagickRealType;
+ alias ushort Quantum;
+ alias ptrdiff_t SignedQuantum;
+
+ static if ( MagickLibVersion >= 0x680 )
+ alias float MagickRealType;
+ else
+ alias double MagickRealType;
/**
* The largest value that fits in a Quantum, This is the same
@@ -104,11 +116,16 @@ extern (C)
enum MagickRealType MagickEpsilon = 2.220446e-16;
enum MagickRealType MagickHuge = 1.0/MagickEpsilon;
}
- else static if ( MagickLibVersion >= 0x679 )
+ else static if ( MagickLibVersion == 0x679 )
{
enum MagickRealType MagickEpsilon = 1.0e-16;
enum MagickRealType MagickHuge = 1.0/MagickEpsilon;
}
+ else static if ( MagickLibVersion >= 0x680 )
+ {
+ enum MagickRealType MagickEpsilon = 1.0e-16;
+ enum MagickRealType MagickHuge = 3.4e+38;
+ }
alias uint MagickStatusType;
alias long MagickOffsetType;
@@ -122,6 +139,7 @@ extern (C)
/// The Quantum depth ImageMagick / DMagick is compiled with.
alias MAGICKCORE_QUANTUM_DEPTH MagickQuantumDepth;
+ enum QuantumScale = (1.0/ cast(double)QuantumRange);
alias QuantumRange TransparentOpacity; /// Fully transparent Quantum.
enum OpaqueOpacity = 0; /// Fully opaque Quantum.
diff --git a/dmagick/c/magickVersion.d b/dmagick/c/magickVersion.d
index 551033d..7969591 100644
--- a/dmagick/c/magickVersion.d
+++ b/dmagick/c/magickVersion.d
@@ -137,13 +137,20 @@ extern(C)
///ditto
enum MagickLibVersionText = "6.7.8";
}
- else
+ else version(MagickCore_679)
{
/// Defines the version of ImageMagick where these headers are based on.
enum MagickLibVersion = 0x679;
///ditto
enum MagickLibVersionText = "6.7.9";
}
+ else
+ {
+ /// Defines the version of ImageMagick where these headers are based on.
+ enum MagickLibVersion = 0x680;
+ ///ditto
+ enum MagickLibVersionText = "6.8.0";
+ }
/*
* With ImageMagick 6.6.3 long and unsinged long were changed to
diff --git a/dmagick/c/pixel.d b/dmagick/c/pixel.d
index 6a4ff80..424fe5e 100644
--- a/dmagick/c/pixel.d
+++ b/dmagick/c/pixel.d
@@ -128,7 +128,19 @@ extern(C)
green,
red,
opacity;
+ }
+ static if ( MagickLibVersion >= 0x680 )
+ {
+ struct QuantumPixelPacket
+ {
+ Quantum
+ red,
+ green,
+ blue,
+ opacity,
+ index;
+ }
}
MagickBooleanType ExportImagePixels(const(Image)*, const ssize_t, const ssize_t, const size_t, const size_t, const(char)*, const StorageType, void*, ExceptionInfo*);