1 module dmagick.c.gem; 2 3 import dmagick.c.geometry; 4 import dmagick.c.magickType; 5 import dmagick.c.magickVersion; 6 import dmagick.c.fx; 7 import dmagick.c.random; 8 9 extern(C) 10 { 11 double ExpandAffine(const(AffineMatrix)*); 12 double GenerateDifferentialNoise(RandomInfo*, const Quantum, const NoiseType, const MagickRealType); 13 14 size_t GetOptimalKernelWidth(const double, const double); 15 size_t GetOptimalKernelWidth1D(const double, const double); 16 size_t GetOptimalKernelWidth2D(const double, const double); 17 18 static if (MagickLibVersion >= 0x679) 19 { 20 void ConvertHCLToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 21 } 22 23 static if (MagickLibVersion >= 0x686) 24 { 25 void ConvertHCLpToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 26 void ConvertHSIToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 27 void ConvertHSVToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 28 } 29 30 void ConvertHSBToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 31 void ConvertHSLToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 32 void ConvertHWBToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 33 34 static if ( MagickLibVersion >= 0x685 ) 35 { 36 void ConvertLCHabToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 37 void ConvertLCHuvToRGB(const double, const double, const double, Quantum*, Quantum*, Quantum*); 38 } 39 40 static if (MagickLibVersion >= 0x679) 41 { 42 void ConvertRGBToHCL(const Quantum, const Quantum, const Quantum, double*, double*, double*); 43 } 44 45 static if (MagickLibVersion >= 0x686) 46 { 47 void ConvertRGBToHCLp( const Quantum, const Quantum, const Quantum, double*, double*, double*); 48 void ConvertRGBToHSI( const Quantum, const Quantum, const Quantum, double*, double*, double*); 49 void ConvertRGBToHSV( const Quantum, const Quantum, const Quantum, double*, double*, double*); 50 } 51 52 void ConvertRGBToHSB(const Quantum, const Quantum, const Quantum, double*, double*, double*); 53 void ConvertRGBToHSL(const Quantum, const Quantum, const Quantum, double*, double*, double*); 54 void ConvertRGBToHWB(const Quantum, const Quantum, const Quantum, double*, double*, double*); 55 56 static if ( MagickLibVersion >= 0x685 ) 57 { 58 void ConvertRGBToLCHab(const Quantum, const Quantum, const Quantum, double*, double*, double*); 59 void ConvertRGBToLCHuv(const Quantum, const Quantum, const Quantum, double*, double*, double*); 60 } 61 }