From: cristy Date: Mon, 17 May 2010 02:20:52 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~9448 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e30389841fc8de20f4bab7631b326b4cc0f5ae1d;p=imagemagick --- diff --git a/coders/exr.c b/coders/exr.c index 072602050..60ef9ed7f 100644 --- a/coders/exr.c +++ b/coders/exr.c @@ -224,13 +224,13 @@ static Image *ReadEXRImage(const ImageInfo *image_info,ExceptionInfo *exception) ImfInputReadPixels(file,min_y+y,min_y+y); for (x=0; x < (long) image->columns; x++) { - q->red=ClampToQuantum((MagickRealType) QuantumRange*ImfHalfToFloat( + q->red=HDRIClampToQuantum((MagickRealType) QuantumRange*ImfHalfToFloat( scanline[x].r)); - q->green=ClampToQuantum((MagickRealType) QuantumRange*ImfHalfToFloat( + q->green=HDRIClampToQuantum((MagickRealType) QuantumRange*ImfHalfToFloat( scanline[x].g)); - q->blue=ClampToQuantum((MagickRealType) QuantumRange*ImfHalfToFloat( + q->blue=HDRIClampToQuantum((MagickRealType) QuantumRange*ImfHalfToFloat( scanline[x].b)); - q->opacity=ClampToQuantum((MagickRealType) QuantumRange-QuantumRange* + q->opacity=HDRIClampToQuantum((MagickRealType) QuantumRange-QuantumRange* ImfHalfToFloat(scanline[x].a)); q++; } diff --git a/coders/psd.c b/coders/psd.c index 838ac4f17..34788de86 100644 --- a/coders/psd.c +++ b/coders/psd.c @@ -514,9 +514,8 @@ static CompositeOperator PSDBlendModeToCompositeOperator(const char *mode) return(OverCompositeOp); } -static MagickBooleanType ReadPSDLayer(Image *image, - const unsigned long channels,const unsigned long type, - const MagickOffsetType *offsets,ExceptionInfo *exception) +static MagickBooleanType ReadPSDLayer(Image *image,const unsigned long channels, + const long type,const MagickOffsetType *offsets,ExceptionInfo *exception) { long y; @@ -1230,8 +1229,8 @@ static Image *ReadPSDImage(const ImageInfo *image_info,ExceptionInfo *exception) offsets[y]=GetPSDOffset(&psd_info,layer_info[i].image); } status=ReadPSDLayer(layer_info[i].image, - layer_info[i].channels,(unsigned long) - layer_info[i].channel_info[j].type,offsets,exception); + layer_info[i].channels,layer_info[i].channel_info[j].type, + offsets,exception); if (compression == 1) offsets=(MagickOffsetType *) RelinquishMagickMemory( offsets); @@ -1359,8 +1358,8 @@ static Image *ReadPSDImage(const ImageInfo *image_info,ExceptionInfo *exception) } for (i=0; i < (long) psd_info.channels; i++) { - status=ReadPSDLayer(image,psd_info.channels,(unsigned long) i,offsets+i* - image->rows,exception); + status=ReadPSDLayer(image,psd_info.channels,i,offsets+i*image->rows, + exception); if (status == MagickFalse) break; status=SetImageProgress(image,LoadImagesTag,i,psd_info.channels); diff --git a/magick/fourier.c b/magick/fourier.c index d29dafdf6..3723e9790 100644 --- a/magick/fourier.c +++ b/magick/fourier.c @@ -52,6 +52,7 @@ #include "magick/memory_.h" #include "magick/monitor.h" #include "magick/property.h" +#include "magick/quantum-private.h" #include "magick/thread-private.h" #if defined(MAGICKCORE_FFTW_DELEGATE) #if defined(MAGICKCORE_HAVE_COMPLEX_H) @@ -117,19 +118,6 @@ typedef struct _FourierInfo #if defined(MAGICKCORE_FFTW_DELEGATE) -static inline Quantum FourierClampToQuantum(const MagickRealType value) -{ -#if defined(MAGICKCORE_HDRI_SUPPORT) - return((Quantum) value); -#else - if (value <= 0.0) - return((Quantum) 0); - if (value >= (MagickRealType) QuantumRange) - return((Quantum) QuantumRange); - return((Quantum) (value+0.5)); -#endif -} - static MagickBooleanType RollFourier(const unsigned long width, const unsigned long height,const long x_offset,const long y_offset, double *fourier) @@ -311,32 +299,32 @@ static MagickBooleanType ForwardFourier(const FourierInfo *fourier_info, case RedChannel: default: { - q->red=FourierClampToQuantum(QuantumRange*magnitude_source[i]); + q->red=HDRIClampToQuantum(QuantumRange*magnitude_source[i]); break; } case GreenChannel: { - q->green=FourierClampToQuantum(QuantumRange*magnitude_source[i]); + q->green=HDRIClampToQuantum(QuantumRange*magnitude_source[i]); break; } case BlueChannel: { - q->blue=FourierClampToQuantum(QuantumRange*magnitude_source[i]); + q->blue=HDRIClampToQuantum(QuantumRange*magnitude_source[i]); break; } case OpacityChannel: { - q->opacity=FourierClampToQuantum(QuantumRange*magnitude_source[i]); + q->opacity=HDRIClampToQuantum(QuantumRange*magnitude_source[i]); break; } case IndexChannel: { - indexes[x]=FourierClampToQuantum(QuantumRange*magnitude_source[i]); + indexes[x]=HDRIClampToQuantum(QuantumRange*magnitude_source[i]); break; } case GrayChannels: { - q->red=FourierClampToQuantum(QuantumRange*magnitude_source[i]); + q->red=HDRIClampToQuantum(QuantumRange*magnitude_source[i]); q->green=q->red; q->blue=q->red; break; @@ -364,32 +352,32 @@ static MagickBooleanType ForwardFourier(const FourierInfo *fourier_info, case RedChannel: default: { - q->red=FourierClampToQuantum(QuantumRange*phase_source[i]); + q->red=HDRIClampToQuantum(QuantumRange*phase_source[i]); break; } case GreenChannel: { - q->green=FourierClampToQuantum(QuantumRange*phase_source[i]); + q->green=HDRIClampToQuantum(QuantumRange*phase_source[i]); break; } case BlueChannel: { - q->blue=FourierClampToQuantum(QuantumRange*phase_source[i]); + q->blue=HDRIClampToQuantum(QuantumRange*phase_source[i]); break; } case OpacityChannel: { - q->opacity=FourierClampToQuantum(QuantumRange*phase_source[i]); + q->opacity=HDRIClampToQuantum(QuantumRange*phase_source[i]); break; } case IndexChannel: { - indexes[x]=FourierClampToQuantum(QuantumRange*phase_source[i]); + indexes[x]=HDRIClampToQuantum(QuantumRange*phase_source[i]); break; } case GrayChannels: { - q->red=FourierClampToQuantum(QuantumRange*phase_source[i]); + q->red=HDRIClampToQuantum(QuantumRange*phase_source[i]); q->green=q->red; q->blue=q->red; break; @@ -1086,32 +1074,32 @@ static MagickBooleanType InverseFourierTransform(FourierInfo *fourier_info, case RedChannel: default: { - q->red=FourierClampToQuantum(QuantumRange*source[i]); + q->red=HDRIClampToQuantum(QuantumRange*source[i]); break; } case GreenChannel: { - q->green=FourierClampToQuantum(QuantumRange*source[i]); + q->green=HDRIClampToQuantum(QuantumRange*source[i]); break; } case BlueChannel: { - q->blue=FourierClampToQuantum(QuantumRange*source[i]); + q->blue=HDRIClampToQuantum(QuantumRange*source[i]); break; } case OpacityChannel: { - q->opacity=FourierClampToQuantum(QuantumRange*source[i]); + q->opacity=HDRIClampToQuantum(QuantumRange*source[i]); break; } case IndexChannel: { - indexes[x]=FourierClampToQuantum(QuantumRange*source[i]); + indexes[x]=HDRIClampToQuantum(QuantumRange*source[i]); break; } case GrayChannels: { - q->red=FourierClampToQuantum(QuantumRange*source[i]); + q->red=HDRIClampToQuantum(QuantumRange*source[i]); q->green=q->red; q->blue=q->red; break; diff --git a/magick/quantum-private.h b/magick/quantum-private.h index c9322faca..7ceaa6532 100644 --- a/magick/quantum-private.h +++ b/magick/quantum-private.h @@ -163,6 +163,19 @@ static inline float HalfToSinglePrecision(const unsigned short half) return(map.single_precision); } +static inline Quantum HDRIClampToQuantum(const MagickRealType value) +{ +#if defined(MAGICKCORE_HDRI_SUPPORT) + return((Quantum) value); +#else + if (value <= 0.0) + return((Quantum) 0); + if (value >= (MagickRealType) QuantumRange) + return((Quantum) QuantumRange); + return((Quantum) (value+0.5)); +#endif +} + static inline void InitializeQuantumState(const QuantumInfo *quantum_info, const EndianType endian,QuantumState *quantum_state) {