]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Sun, 25 Sep 2011 20:47:53 +0000 (20:47 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Sun, 25 Sep 2011 20:47:53 +0000 (20:47 +0000)
14 files changed:
MagickCore/compare.c
MagickCore/effect.c
MagickCore/enhance.c
MagickCore/fx.c
MagickCore/image.c
MagickCore/magick-config.h
MagickCore/pixel.c
MagickCore/resize.c
MagickCore/shear.c
MagickCore/statistic.c
MagickCore/threshold.c
MagickCore/transform.c
MagickCore/version.h
coders/dpx.c

index 39910e251200dce655e414f2a6febdde2881fea7..d2ee64264498de54d98e6feaa23a05045a516c84 100644 (file)
@@ -223,6 +223,9 @@ MagickExport Image *CompareImages(Image *image,const Image *reconstruct_image,
       difference=MagickFalse;
       for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
       {
+        MagickRealType
+          distance;
+
         PixelChannel
           channel;
 
@@ -238,7 +241,9 @@ MagickExport Image *CompareImages(Image *image,const Image *reconstruct_image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        if (fabs(p[i]-(double) q[channel]) >= MagickEpsilon)
+        distance=p[i]-(MagickRealType)
+          GetPixelChannel(reconstruct_image,channel,q);
+        if (fabs((double) distance) >= MagickEpsilon)
           difference=MagickTrue;
       }
       if (difference == MagickFalse)
@@ -369,7 +374,7 @@ static MagickBooleanType GetAbsoluteDistortion(const Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        if (p[i] != q[channel])
+        if (p[i] != GetPixelChannel(reconstruct_image,channel,q))
           difference=MagickTrue;
       }
       if (difference != MagickFalse)
@@ -483,7 +488,8 @@ static MagickBooleanType GetFuzzDistortion(const Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        distance=QuantumScale*(p[i]-(MagickRealType) q[channel]);
+        distance=QuantumScale*(p[i]-(MagickRealType) GetPixelChannel(
+          reconstruct_image,channel,q));
         distance*=distance;
         channel_distortion[i]+=distance;
         channel_distortion[MaxPixelChannels]+=distance;
@@ -577,7 +583,8 @@ static MagickBooleanType GetMeanAbsoluteDistortion(const Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        distance=QuantumScale*fabs(p[i]-(double) q[channel]);
+        distance=QuantumScale*fabs(p[i]-(MagickRealType) GetPixelChannel(
+          reconstruct_image,channel,q));
         channel_distortion[i]+=distance;
         channel_distortion[MaxPixelChannels]+=distance;
       }
@@ -668,7 +675,8 @@ static MagickBooleanType GetMeanErrorPerPixel(Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        distance=fabs(alpha*p[i]-beta*q[channel]);
+        distance=fabs((double) (alpha*p[i]-beta*GetPixelChannel(
+          reconstruct_image,channel,q)));
         distortion[i]+=distance;
         distortion[MaxPixelChannels]+=distance;
         mean_error+=distance*distance;
@@ -759,7 +767,8 @@ static MagickBooleanType GetMeanSquaredDistortion(const Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        distance=QuantumScale*(p[i]-(MagickRealType) q[channel]);
+        distance=QuantumScale*(p[i]-(MagickRealType) GetPixelChannel(
+          reconstruct_image,channel,q));
         distance*=distance;
         channel_distortion[i]+=distance;
         channel_distortion[MaxPixelChannels]+=distance;
@@ -864,7 +873,8 @@ static MagickBooleanType GetNormalizedCrossCorrelationDistortion(
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
         distortion[i]+=area*QuantumScale*(p[i]-image_statistics[i].mean)*
-          (q[channel]-reconstruct_statistics[channel].mean);
+          (GetPixelChannel(reconstruct_image,channel,q)-
+          reconstruct_statistics[channel].mean);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(image);
@@ -981,7 +991,8 @@ static MagickBooleanType GetPeakAbsoluteDistortion(const Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        distance=QuantumScale*fabs(p[i]-(double) q[channel]);
+        distance=QuantumScale*fabs(p[i]-(MagickRealType) GetPixelChannel(
+          reconstruct_image,channel,q));
         if (distance > channel_distortion[i])
           channel_distortion[i]=distance;
         if (distance > channel_distortion[MaxPixelChannels])
@@ -1388,7 +1399,8 @@ MagickExport MagickBooleanType IsImagesEqual(Image *image,
           continue;
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
-        distance=fabs(p[i]-(double) q[channel]);
+        distance=fabs(p[i]-(MagickRealType) GetPixelChannel(reconstruct_image,
+          channel,q));
         mean_error_per_pixel+=distance;
         mean_error+=distance*distance;
         if (distance > maximum_error)
@@ -1521,7 +1533,8 @@ static double GetNCCDistortion(const Image *image,
         if ((reconstruct_traits & UpdatePixelTrait) == 0)
           continue;
         distortion+=area*QuantumScale*(p[i]-image_statistics[i].mean)*
-          (q[channel]-reconstruct_statistics[channel].mean);
+          (GetPixelChannel(reconstruct_image,channel,q)-
+          reconstruct_statistics[channel].mean);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(reconstruct_image);
@@ -1677,7 +1690,8 @@ MagickExport Image *SimilarityImage(Image *image,const Image *reference,
           continue;
         if ((similarity_traits & UpdatePixelTrait) == 0)
           continue;
-        q[channel]=ClampToQuantum(QuantumRange-QuantumRange*similarity);
+        SetPixelChannel(similarity_image,channel,ClampToQuantum(QuantumRange-
+          QuantumRange*similarity),q);
       }
       q+=GetPixelChannels(similarity_image);
     }
index 98ea3197aa32d82e5fabd459461d834e6d552491..e94df223d0b0c23276719040424fec247c250535 100644 (file)
@@ -379,7 +379,7 @@ MagickExport Image *AdaptiveBlurImage(const Image *image,
           continue;
         if ((blur_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(blur_image,channel,p[center+i],q);
             continue;
           }
         k=kernel[j];
@@ -402,7 +402,7 @@ MagickExport Image *AdaptiveBlurImage(const Image *image,
               }
             }
             gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-            q[channel]=ClampToQuantum(gamma*pixel);
+            SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
             continue;
           }
         /*
@@ -420,7 +420,7 @@ MagickExport Image *AdaptiveBlurImage(const Image *image,
           }
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       q+=GetPixelChannels(blur_image);
       r+=GetPixelChannels(edge_image);
@@ -701,7 +701,7 @@ MagickExport Image *AdaptiveSharpenImage(const Image *image,const double radius,
           continue;
         if ((sharp_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(sharp_image,channel,p[center+i],q);
             continue;
           }
         k=kernel[j];
@@ -724,7 +724,7 @@ MagickExport Image *AdaptiveSharpenImage(const Image *image,const double radius,
               }
             }
             gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-            q[channel]=ClampToQuantum(gamma*pixel);
+            SetPixelChannel(sharp_image,channel,ClampToQuantum(gamma*pixel),q);
             continue;
           }
         /*
@@ -742,7 +742,7 @@ MagickExport Image *AdaptiveSharpenImage(const Image *image,const double radius,
           }
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(sharp_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       q+=GetPixelChannels(sharp_image);
       r+=GetPixelChannels(edge_image);
@@ -1002,7 +1002,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius,
           continue;
         if ((blur_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(blur_image,channel,p[center+i],q);
             continue;
           }
         k=kernel;
@@ -1019,7 +1019,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius,
               k++;
               pixels+=GetPixelChannels(image);
             }
-            q[channel]=ClampToQuantum(pixel);
+            SetPixelChannel(blur_image,channel,ClampToQuantum(pixel),q);
             continue;
           }
         /*
@@ -1035,7 +1035,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius,
           pixels+=GetPixelChannels(image);
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(blur_image);
@@ -1123,7 +1123,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius,
           continue;
         if ((blur_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(blur_image,channel,p[center+i],q);
             continue;
           }
         k=kernel;
@@ -1140,7 +1140,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius,
               k++;
               pixels+=GetPixelChannels(blur_image);
             }
-            q[channel]=ClampToQuantum(pixel);
+            SetPixelChannel(blur_image,channel,ClampToQuantum(pixel),q);
             continue;
           }
         /*
@@ -1157,7 +1157,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius,
           pixels+=GetPixelChannels(blur_image);
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       p+=GetPixelChannels(blur_image);
       q+=GetPixelChannels(blur_image);
@@ -1367,7 +1367,7 @@ MagickExport Image *ConvolveImage(const Image *image,
           continue;
         if ((convolve_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(convolve_image,channel,p[center+i],q);
             continue;
           }
         k=kernel_info->values;
@@ -1388,7 +1388,7 @@ MagickExport Image *ConvolveImage(const Image *image,
               }
               pixels+=image->columns*GetPixelChannels(image);
             }
-            q[channel]=ClampToQuantum(pixel);
+            SetPixelChannel(convolve_image,channel,ClampToQuantum(pixel),q);
             continue;
           }
         /*
@@ -1408,7 +1408,7 @@ MagickExport Image *ConvolveImage(const Image *image,
           pixels+=image->columns*GetPixelChannels(image);
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(convolve_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(convolve_image);
@@ -1710,7 +1710,7 @@ MagickExport Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
       j++;
       for (x=0; x < (ssize_t) image->columns; x++)
       {
-        q[channel]=pixel[j++];
+        SetPixelChannel(despeckle_image,channel,pixel[j++],q);
         q+=GetPixelChannels(despeckle_image);
       }
       sync=SyncCacheViewAuthenticPixels(despeckle_view,exception);
@@ -2224,7 +2224,7 @@ MagickExport Image *MotionBlurImage(const Image *image,const double radius,
           continue;
         if ((blur_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[i];
+            SetPixelChannel(blur_image,channel,p[i],q);
             continue;
           }
         k=kernel;
@@ -2243,7 +2243,7 @@ MagickExport Image *MotionBlurImage(const Image *image,const double radius,
               pixel+=(*k)*r[i];
               k++;
             }
-            q[channel]=ClampToQuantum(pixel);
+            SetPixelChannel(blur_image,channel,ClampToQuantum(pixel),q);
             continue;
           }
         alpha=0.0;
@@ -2263,7 +2263,7 @@ MagickExport Image *MotionBlurImage(const Image *image,const double radius,
           k++;
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(blur_image);
@@ -3011,7 +3011,7 @@ MagickExport Image *RadialBlurImage(const Image *image,
           continue;
         if ((blur_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[i];
+            SetPixelChannel(blur_image,channel,p[i],q);
             continue;
           }
         gamma=0.0;
@@ -3033,7 +3033,7 @@ MagickExport Image *RadialBlurImage(const Image *image,
               gamma++;
             }
             gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-            q[channel]=ClampToQuantum(gamma*pixel);
+            SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
             continue;
           }
         for (j=0; j < (ssize_t) n; j+=(ssize_t) step)
@@ -3051,7 +3051,7 @@ MagickExport Image *RadialBlurImage(const Image *image,
           gamma+=GetPixelAlpha(image,r);
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(blur_image);
@@ -3294,7 +3294,7 @@ MagickExport Image *SelectiveBlurImage(const Image *image,
           continue;
         if ((blur_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(blur_image,channel,p[center+i],q);
             continue;
           }
         k=kernel;
@@ -3321,11 +3321,11 @@ MagickExport Image *SelectiveBlurImage(const Image *image,
             }
             if (fabs((double) gamma) < MagickEpsilon)
               {
-                q[channel]=p[center+i];
+                SetPixelChannel(blur_image,channel,p[center+i],q);
                 continue;
               }
             gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-            q[channel]=ClampToQuantum(gamma*pixel);
+            SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
             continue;
           }
         for (v=0; v < (ssize_t) width; v++)
@@ -3347,11 +3347,11 @@ MagickExport Image *SelectiveBlurImage(const Image *image,
         }
         if (fabs((double) gamma) < MagickEpsilon)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(blur_image,channel,p[center+i],q);
             continue;
           }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(blur_image);
@@ -3562,15 +3562,16 @@ MagickExport Image *ShadeImage(const Image *image,const MagickBooleanType gray,
           continue;
         if ((shade_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=center[i];
+            SetPixelChannel(shade_image,channel,center[i],q);
             continue;
           }
         if (gray != MagickFalse)
           {
-            q[channel]=ClampToQuantum(shade);
+            SetPixelChannel(shade_image,channel,ClampToQuantum(shade),q);
             continue;
           }
-        q[channel]=ClampToQuantum(QuantumScale*shade*center[i]);
+        SetPixelChannel(shade_image,channel,ClampToQuantum(QuantumScale*shade*
+          center[i]),q);
       }
       pre+=GetPixelChannels(image);
       center+=GetPixelChannels(image);
@@ -4437,7 +4438,7 @@ MagickExport Image *StatisticImage(const Image *image,const StatisticType type,
           continue;
         if ((statistic_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(statistic_image,channel,p[center+i],q);
             continue;
           }
         pixels=p;
@@ -4501,7 +4502,7 @@ MagickExport Image *StatisticImage(const Image *image,const StatisticType type,
             break;
           }
         }
-        q[channel]=pixel;
+        SetPixelChannel(statistic_image,channel,pixel,q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(statistic_image);
@@ -4657,15 +4658,15 @@ MagickExport Image *UnsharpMaskImage(const Image *image,
           continue;
         if ((unsharp_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[i];
+            SetPixelChannel(unsharp_image,channel,p[i],q);
             continue;
           }
-        pixel=p[i]-(MagickRealType) q[channel];
+        pixel=p[i]-(MagickRealType) GetPixelChannel(unsharp_image,channel,q);
         if (fabs(2.0*pixel) < quantum_threshold)
           pixel=(MagickRealType) p[i];
         else
           pixel=(MagickRealType) p[i]+amount*pixel;
-        q[channel]=ClampToQuantum(pixel);
+        SetPixelChannel(unsharp_image,channel,ClampToQuantum(pixel),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(unsharp_image);
index c9ea75d6da6ae00cddca120897146f01f14eb5fa..741778bafa5379e2f8bf832f3c6f22f3d0695e54 100644 (file)
@@ -391,8 +391,9 @@ MagickExport MagickBooleanType ClutImage(Image *image,const Image *clut_image,
             (clut_traits == UndefinedPixelTrait) ||
             ((traits & UpdatePixelTrait) == 0))
           continue;
-        q[channel]=ClampToQuantum(clut_map[ScaleQuantumToMap(q[channel])*
-          GetPixelChannels(clut_image)+channel]);
+        SetPixelChannel(clut_image,channel,ClampToQuantum(clut_map[
+          ScaleQuantumToMap(GetPixelChannel(clut_image,channel,q))*
+          GetPixelChannels(clut_image)+channel]),q);
       }
       q+=GetPixelChannels(image);
     }
@@ -1285,8 +1286,9 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image,
 MagickExport Image *EnhanceImage(const Image *image,ExceptionInfo *exception)
 {
 #define EnhancePixel(weight) \
-  mean=((MagickRealType) r[i]+q[channel])/2.0; \
-  distance=(MagickRealType) r[i]-(MagickRealType) q[channel]; \
+  mean=((MagickRealType) r[i]+GetPixelChannel(enhance_image,channel,q))/2.0; \
+  distance=(MagickRealType) r[i]-(MagickRealType) GetPixelChannel( \
+    enhance_image,channel,q); \
   distance_squared=QuantumScale*(2.0*((MagickRealType) QuantumRange+1.0)+ \
     mean)*distance*distance; \
   if (distance_squared < ((MagickRealType) QuantumRange*(MagickRealType) \
@@ -1397,7 +1399,7 @@ MagickExport Image *EnhanceImage(const Image *image,ExceptionInfo *exception)
         if ((traits == UndefinedPixelTrait) ||
             (enhance_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[center+i];
+        SetPixelChannel(enhance_image,channel,p[center+i],q);
         if ((enhance_traits & CopyPixelTrait) != 0)
           continue;
         /*
@@ -1420,7 +1422,8 @@ MagickExport Image *EnhanceImage(const Image *image,ExceptionInfo *exception)
         r=p+4*GetPixelChannels(image)*(image->columns+4);
         EnhancePixel(5.0); EnhancePixel(8.0); EnhancePixel(10.0);
           EnhancePixel(8.0); EnhancePixel(5.0);
-        q[channel]=ClampToQuantum(aggregate/total_weight);
+        SetPixelChannel(enhance_image,channel,ClampToQuantum(aggregate/
+          total_weight),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(enhance_image);
index ac036f6953909090131084b75a94356b3292468b..cb20c249a599402a2e6a6f93b44ce26c2734de53 100644 (file)
@@ -3043,7 +3043,7 @@ MagickExport Image *FxImage(const Image *image,const char *expression,
           continue;
         if ((fx_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[i];
+            SetPixelChannel(fx_image,channel,p[i],q);
             continue;
           }
         alpha=0.0;
index 96d088fd2475494b46fcb0b669af791892708295..4789c1e1826a9772e604d2bf5825110e54a63882 100644 (file)
@@ -554,7 +554,7 @@ MagickExport Image *AppendImages(const Image *images,
           if ((traits == UndefinedPixelTrait) ||
               (append_traits == UndefinedPixelTrait))
             continue;
-          q[channel]=p[i];
+          SetPixelChannel(append_image,channel,p[i],q);
         }
         p+=GetPixelChannels(image);
         q+=GetPixelChannels(append_image);
index df4049a78129a7466581193a030eb7afa32416bc..6fe106710b0f3257f6aacd5f2b5b6a89056ac642 100644 (file)
@@ -12,7 +12,9 @@
 /* #undef AUTOTRACE_DELEGATE */
 
 /* Define if coders and filters are to be built as modules. */
-/* #undef BUILD_MODULES */
+#ifndef MAGICKCORE_BUILD_MODULES
+#define MAGICKCORE_BUILD_MODULES 1
+#endif
 
 /* Define if you have the bzip2 library */
 #ifndef MAGICKCORE_BZLIB_DELEGATE
@@ -75,7 +77,9 @@
 #endif
 
 /* Define if you have FFTW library */
-/* #undef FFTW_DELEGATE */
+#ifndef MAGICKCORE_FFTW_DELEGATE
+#define MAGICKCORE_FFTW_DELEGATE 1
+#endif
 
 /* Location of filter modules */
 #ifndef MAGICKCORE_FILTER_PATH
 #endif
 
 /* Define to 1 if you have the <CL/cl.h> header file. */
-/* #undef HAVE_CL_CL_H */
+#ifndef MAGICKCORE_HAVE_CL_CL_H
+#define MAGICKCORE_HAVE_CL_CL_H 1
+#endif
 
 /* Define to 1 if you have the <complex.h> header file. */
 #ifndef MAGICKCORE_HAVE_COMPLEX_H
 #endif
 
 /* Define if you have the <lcms2.h> header file. */
-#ifndef MAGICKCORE_HAVE_LCMS2_H
-#define MAGICKCORE_HAVE_LCMS2_H 1
-#endif
+/* #undef HAVE_LCMS2_H */
 
 /* Define if you have the <lcms2/lcms2.h> header file. */
 /* #undef HAVE_LCMS2_LCMS2_H */
 
 /* Define if you have the <lcms.h> header file. */
-/* #undef HAVE_LCMS_H */
+#ifndef MAGICKCORE_HAVE_LCMS_H
+#define MAGICKCORE_HAVE_LCMS_H 1
+#endif
 
 /* Define if you have the <lcms/lcms.h> header file. */
 /* #undef HAVE_LCMS_LCMS_H */
 #endif
 
 /* Define if you have JBIG library */
-/* #undef JBIG_DELEGATE */
+#ifndef MAGICKCORE_JBIG_DELEGATE
+#define MAGICKCORE_JBIG_DELEGATE 1
+#endif
 
 /* Define if you have JPEG version 2 "Jasper" library */
 #ifndef MAGICKCORE_JP2_DELEGATE
 #endif
 
 /* Define if you have LQR library */
-/* #undef LQR_DELEGATE */
+#ifndef MAGICKCORE_LQR_DELEGATE
+#define MAGICKCORE_LQR_DELEGATE 1
+#endif
 
 /* Define if using libltdl to support dynamically loadable modules */
 #ifndef MAGICKCORE_LTDL_DELEGATE
 
 /* Define to the system default library search path. */
 #ifndef MAGICKCORE_LT_DLSEARCH_PATH
-#define MAGICKCORE_LT_DLSEARCH_PATH "/lib64:/usr/lib64:/lib:/usr/lib:/usr/lib64/atlas:/usr/lib/llvm:/usr/lib64/llvm:/usr/lib64/mysql:/usr/lib64/qt-3.3/lib:/usr/lib64/tcl8.5/tclx8.4:/usr/lib64/tcl8.5:/usr/lib/wine/:/usr/lib64/wine/:/usr/lib64/xulrunner-2"
+#define MAGICKCORE_LT_DLSEARCH_PATH "/lib64:/usr/lib64:/lib:/usr/lib:/usr/lib64/R/lib:/usr/lib64/atlas:/opt/modules/pkg/intel/f77/10.0.025/lib:/opt/intel/lib/intel64:/usr/lib64/llvm:/usr/local/lib:/usr/lib64/mysql:/usr/lib64/nvidia:/usr/lib64/qt-3.3/lib:/usr/lib64/xulrunner-2"
 #endif
 
 /* The archive extension */
 /* #undef NO_MINUS_C_MINUS_O */
 
 /* Define if you have OPENEXR library */
-/* #undef OPENEXR_DELEGATE */
+#ifndef MAGICKCORE_OPENEXR_DELEGATE
+#define MAGICKCORE_OPENEXR_DELEGATE 1
+#endif
 
 /* Define to the address where bug reports for this package should be sent. */
 #ifndef MAGICKCORE_PACKAGE_BUGREPORT
 #endif
 
 /* Define if you have RSVG library */
-/* #undef RSVG_DELEGATE */
+#ifndef MAGICKCORE_RSVG_DELEGATE
+#define MAGICKCORE_RSVG_DELEGATE 1
+#endif
 
 /* Define to the type of arg 1 for `select'. */
 #ifndef MAGICKCORE_SELECT_TYPE_ARG1
 
 
 /* Define if you have WEBP library */
-/* #undef WEBP_DELEGATE */
+#ifndef MAGICKCORE_WEBP_DELEGATE
+#define MAGICKCORE_WEBP_DELEGATE 1
+#endif
 
 /* Define to use the Windows GDI32 library */
 /* #undef WINGDI32_DELEGATE */
 /* #undef WITH_DMALLOC */
 
 /* Define if you have WMF library */
-/* #undef WMF_DELEGATE */
+#ifndef MAGICKCORE_WMF_DELEGATE
+#define MAGICKCORE_WMF_DELEGATE 1
+#endif
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */
 /* #undef _MINIX */
 
 /* Define this for the OpenCL Accelerator */
-/* #undef _OPENCL */
+#ifndef MAGICKCORE__OPENCL
+#define MAGICKCORE__OPENCL 1
+#endif
 
 /* Define to 2 if the system does not provide POSIX.1 features except with
    this defined. */
index 96c2904676c4966892e713d1eefca55d298794d5..b2707086f288ee9d35cfd7f34a151e9a78b25d80 100644 (file)
@@ -3870,7 +3870,7 @@ MagickExport MagickBooleanType InterpolatePixelChannel(const Image *image,
       if (p == (const Quantum *) NULL)
         status=MagickFalse;
       else
-        *pixel=(double) p[channel];
+        *pixel=(double) GetPixelChannel(image,channel,p);
       filter_view=DestroyCacheView(filter_view);
       filter_image=DestroyImage(filter_image);
       break;
@@ -3883,7 +3883,7 @@ MagickExport MagickBooleanType InterpolatePixelChannel(const Image *image,
           status=MagickFalse;
           break;
         }
-      *pixel=(double) p[channel];
+      *pixel=(double) GetPixelChannel(image,channel,p);
       break;
     }
     case NearestNeighborInterpolatePixel:
@@ -3895,7 +3895,7 @@ MagickExport MagickBooleanType InterpolatePixelChannel(const Image *image,
           status=MagickFalse;
           break;
         }
-      *pixel=(double) p[channel];
+      *pixel=(double) GetPixelChannel(image,channel,p);
       break;
     }
     case MeshInterpolatePixel:
index 533376fc57ccdd9e19b8640957d07fc0b6734a18..e6c32cb576e06975beb3e2e92a8c46442edaa3b1 100644 (file)
@@ -1775,7 +1775,8 @@ MagickExport Image *LiquidRescaleImage(const Image *image,const size_t columns,
       if ((traits == UndefinedPixelTrait) ||
           (rescale_traits == UndefinedPixelTrait))
         continue;
-      q[channel]=ClampToQuantum(QuantumRange*packet[i]);
+      SetPixelChannel(rescale_image,channel,ClampToQuantum(QuantumRange*
+        packet[i]),q);
     }
     if (SyncCacheViewAuthenticPixels(rescale_view,exception) == MagickFalse)
       break;
@@ -2212,7 +2213,8 @@ static MagickBooleanType HorizontalFilter(const ResizeFilter *resize_filter,
               stop-1.0)+0.5);
             k=y*(contribution[n-1].pixel-contribution[0].pixel+1)+
               (contribution[j-start].pixel-contribution[0].pixel);
-            q[channel]=p[k*GetPixelChannels(image)+i];
+            SetPixelChannel(resize_image,channel,p[k*GetPixelChannels(image)+i],
+              q);
             continue;
           }
         pixel=0.0;
@@ -2228,7 +2230,7 @@ static MagickBooleanType HorizontalFilter(const ResizeFilter *resize_filter,
               alpha=contribution[j].weight;
               pixel+=alpha*p[k*GetPixelChannels(image)+i];
             }
-            q[channel]=ClampToQuantum(pixel);
+            SetPixelChannel(resize_image,channel,ClampToQuantum(pixel),q);
             continue;
           }
         /*
@@ -2245,7 +2247,7 @@ static MagickBooleanType HorizontalFilter(const ResizeFilter *resize_filter,
           gamma+=alpha;
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(resize_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       q+=GetPixelChannels(resize_image);
     }
@@ -2424,7 +2426,8 @@ static MagickBooleanType VerticalFilter(const ResizeFilter *resize_filter,
               stop-1.0)+0.5);
             k=(ssize_t) ((contribution[j-start].pixel-contribution[0].pixel)*
               image->columns+x);
-            q[channel]=p[k*GetPixelChannels(image)+i];
+            SetPixelChannel(resize_image,channel,p[k*GetPixelChannels(image)+i],
+              q);
             continue;
           }
         pixel=0.0;
@@ -2440,7 +2443,7 @@ static MagickBooleanType VerticalFilter(const ResizeFilter *resize_filter,
               alpha=contribution[j].weight;
               pixel+=alpha*p[k*GetPixelChannels(image)+i];
             }
-            q[channel]=ClampToQuantum(pixel);
+            SetPixelChannel(resize_image,channel,ClampToQuantum(pixel),q);
             continue;
           }
         gamma=0.0;
@@ -2454,7 +2457,7 @@ static MagickBooleanType VerticalFilter(const ResizeFilter *resize_filter,
           gamma+=alpha;
         }
         gamma=1.0/(fabs((double) gamma) <= MagickEpsilon ? 1.0 : gamma);
-        q[channel]=ClampToQuantum(gamma*pixel);
+        SetPixelChannel(resize_image,channel,ClampToQuantum(gamma*pixel),q);
       }
       q+=GetPixelChannels(resize_image);
     }
@@ -2727,7 +2730,8 @@ MagickExport Image *SampleImage(const Image *image,const size_t columns,
         if ((traits == UndefinedPixelTrait) ||
             (sample_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[x_offset[x]*GetPixelChannels(image)+i];
+        SetPixelChannel(sample_image,channel,p[x_offset[x]*GetPixelChannels(
+          image)+i],q);
       }
       q+=GetPixelChannels(sample_image);
     }
@@ -3027,15 +3031,15 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns,
               continue;
             if ((scale_traits & BlendPixelTrait) == 0)
               {
-                q[channel]=ClampToQuantum(scanline[x*
-                  GetPixelChannels(image)+i]);
+                SetPixelChannel(scale_image,channel,ClampToQuantum(scanline[
+                  x*GetPixelChannels(image)+i]),q);
                 continue;
               }
             alpha=QuantumScale*scanline[x*GetPixelChannels(image)+
               GetPixelChannelMapChannel(image,AlphaPixelChannel)];
             gamma=1.0/(fabs((double) alpha) <= MagickEpsilon ? 1.0 : alpha);
-            q[channel]=ClampToQuantum(gamma*scanline[x*GetPixelChannels(image)+
-              i]);
+            SetPixelChannel(scale_image,channel,ClampToQuantum(gamma*scanline[
+              x*GetPixelChannels(image)+i]),q);
           }
           q+=GetPixelChannels(scale_image);
         }
@@ -3115,15 +3119,15 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns,
             continue;
           if ((scale_traits & BlendPixelTrait) == 0)
             {
-              q[channel]=ClampToQuantum(scale_scanline[x*
-                GetPixelChannels(scale_image)+channel]);
+              SetPixelChannel(scale_image,channel,ClampToQuantum(
+                scale_scanline[x*GetPixelChannels(scale_image)+channel]),q);
               continue;
             }
           alpha=QuantumScale*scanline[x*GetPixelChannels(image)+
             GetPixelChannelMapChannel(image,AlphaPixelChannel)];
           gamma=1.0/(fabs((double) alpha) <= MagickEpsilon ? 1.0 : alpha);
-          q[channel]=ClampToQuantum(gamma*scale_scanline[
-            x*GetPixelChannels(scale_image)+channel]);
+          SetPixelChannel(scale_image,channel,ClampToQuantum(gamma*
+            scale_scanline[x*GetPixelChannels(scale_image)+channel]),q);
         }
         q+=GetPixelChannels(scale_image);
       }
index d6ca2acbe82562ac7c615f233af01deb9dd68fcc..50bde33280bc0bffc03a312d47220b65f1760976 100644 (file)
@@ -1163,10 +1163,10 @@ static Image *IntegralRotateImage(const Image *image,size_t rotations,
                   continue;
                 if ((rotate_traits & CopyPixelTrait) != 0)
                   {
-                    q[channel]=tile_pixels[i];
+                    SetPixelChannel(rotate_image,channel,tile_pixels[i],q);
                     continue;
                   }
-                q[channel]=tile_pixels[i];
+                SetPixelChannel(rotate_image,channel,tile_pixels[i],q);
               }
               tile_pixels-=width*GetPixelChannels(image);
               q+=GetPixelChannels(rotate_image);
@@ -1251,10 +1251,10 @@ static Image *IntegralRotateImage(const Image *image,size_t rotations,
               continue;
             if ((rotate_traits & CopyPixelTrait) != 0)
               {
-                q[channel]=p[i];
+                SetPixelChannel(rotate_image,channel,p[i],q);
                 continue;
               }
-            q[channel]=p[i];
+            SetPixelChannel(rotate_image,channel,p[i],q);
           }
           p+=GetPixelChannels(image);
         }
@@ -1374,10 +1374,10 @@ static Image *IntegralRotateImage(const Image *image,size_t rotations,
                   continue;
                 if ((rotate_traits & CopyPixelTrait) != 0)
                   {
-                    q[channel]=tile_pixels[i];
+                    SetPixelChannel(rotate_image,channel,tile_pixels[i],q);
                     continue;
                   }
-                q[channel]=tile_pixels[i];
+                SetPixelChannel(rotate_image,channel,tile_pixels[i],q);
               }
               tile_pixels+=width*GetPixelChannels(image);
               q+=GetPixelChannels(rotate_image);
index 9bbaa920c0ba8055f976cba4c68e469f72bf034f..5459f73345f47284414415491550cc9badf86738 100644 (file)
@@ -569,7 +569,8 @@ MagickExport Image *EvaluateImages(const Image *images,
             if ((evaluate_traits & UpdatePixelTrait) == 0)
               continue;
             evaluate_pixel[j].channel[i]=ApplyEvaluateOperator(random_info[id],
-              p[channel],op,evaluate_pixel[j].channel[i]);
+              GetPixelChannel(evaluate_image,channel,p),op,
+              evaluate_pixel[j].channel[i]);
           }
           image_view=DestroyCacheView(image_view);
           next=GetNextImageInList(next);
@@ -674,8 +675,8 @@ MagickExport Image *EvaluateImages(const Image *images,
             if ((traits & UpdatePixelTrait) == 0)
               continue;
             evaluate_pixel[x].channel[i]=ApplyEvaluateOperator(random_info[id],
-              p[channel],j == 0 ? AddEvaluateOperator : op,
-              evaluate_pixel[x].channel[i]);
+              GetPixelChannel(evaluate_image,channel,p),j == 0 ?
+              AddEvaluateOperator : op,evaluate_pixel[x].channel[i]);
           }
           p+=GetPixelChannels(next);
         }
index 5e9f02363dd356b99bffd61a79953fc6dfccffaa..380c643e13d783e72eecf2d70bcbeefbcd4533ae 100644 (file)
@@ -260,7 +260,7 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image,
           continue;
         if ((threshold_traits & CopyPixelTrait) != 0)
           {
-            q[channel]=p[center+i];
+            SetPixelChannel(threshold_image,channel,p[center+i],q);
             continue;
           }
         pixels=p;
@@ -275,8 +275,8 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image,
           pixels+=image->columns*GetPixelChannels(image);
         }
         mean=pixel/number_pixels+bias;
-        q[channel]=(Quantum) (((MagickRealType) p[center+i] <= mean) ? 0 :
-          QuantumRange);
+        SetPixelChannel(threshold_image,channel,ClampToQuantum(((MagickRealType)
+          p[center+i] <= mean) ? 0 : QuantumRange),q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(threshold_image);
index b213d338e3f17af9489ef0b19b075c00cd9f0d69..745afc44ba6028c5fbb277859d6ed43206d301eb 100644 (file)
@@ -205,7 +205,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info,
             if ((traits == UndefinedPixelTrait) ||
                 (chop_traits == UndefinedPixelTrait))
               continue;
-            q[channel]=p[i];
+            SetPixelChannel(chop_image,channel,p[i],q);
           }
           q+=GetPixelChannels(chop_image);
         }
@@ -276,7 +276,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info,
             if ((traits == UndefinedPixelTrait) ||
                 (chop_traits == UndefinedPixelTrait))
               continue;
-            q[channel]=p[i];
+            SetPixelChannel(chop_image,channel,p[i],q);
           }
           q+=GetPixelChannels(chop_image);
         }
@@ -629,7 +629,7 @@ MagickExport Image *CropImage(const Image *image,const RectangleInfo *geometry,
         if ((traits == UndefinedPixelTrait) ||
             (crop_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(crop_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(crop_image);
@@ -981,7 +981,7 @@ MagickExport Image *ExcerptImage(const Image *image,
         if ((traits == UndefinedPixelTrait) ||
             (excerpt_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(excerpt_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(excerpt_image);
@@ -1181,7 +1181,7 @@ MagickExport Image *FlipImage(const Image *image,ExceptionInfo *exception)
         if ((traits == UndefinedPixelTrait) ||
             (flip_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(flip_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(flip_image);
@@ -1323,7 +1323,7 @@ MagickExport Image *FlopImage(const Image *image,ExceptionInfo *exception)
         if ((traits == UndefinedPixelTrait) ||
             (flop_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(flop_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
     }
@@ -1450,7 +1450,7 @@ static inline MagickBooleanType CopyImageRegion(Image *destination,
         if ((source_traits == UndefinedPixelTrait) ||
             (destination_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(destination,channel,p[i],q);
       }
       p+=GetPixelChannels(source);
       q+=GetPixelChannels(destination);
@@ -1768,7 +1768,7 @@ MagickExport Image *SpliceImage(const Image *image,
         if ((traits == UndefinedPixelTrait) ||
             (splice_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(splice_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(splice_image);
@@ -1795,7 +1795,7 @@ MagickExport Image *SpliceImage(const Image *image,
         if ((traits == UndefinedPixelTrait) ||
             (splice_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(splice_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(splice_image);
@@ -1864,7 +1864,7 @@ MagickExport Image *SpliceImage(const Image *image,
         if ((traits == UndefinedPixelTrait) ||
             (splice_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(splice_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(splice_image);
@@ -1891,7 +1891,7 @@ MagickExport Image *SpliceImage(const Image *image,
         if ((traits == UndefinedPixelTrait) ||
             (splice_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(splice_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(splice_image);
@@ -2196,7 +2196,7 @@ MagickExport Image *TransposeImage(const Image *image,ExceptionInfo *exception)
         if ((traits == UndefinedPixelTrait) ||
             (transpose_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(transpose_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
       q+=GetPixelChannels(transpose_image);
@@ -2343,7 +2343,7 @@ MagickExport Image *TransverseImage(const Image *image,ExceptionInfo *exception)
         if ((traits == UndefinedPixelTrait) ||
             (transverse_traits == UndefinedPixelTrait))
           continue;
-        q[channel]=p[i];
+        SetPixelChannel(transverse_image,channel,p[i],q);
       }
       p+=GetPixelChannels(image);
     }
index d5dc7ed7df9e328a2dfad1c64145f8e08b3dea1b..652af7a80b276948563f0a57740e2eb1f0ba4cc2 100644 (file)
@@ -27,14 +27,14 @@ extern "C" {
 */
 #define MagickPackageName "ImageMagick"
 #define MagickCopyright  "Copyright (C) 1999-2011 ImageMagick Studio LLC"
-#define MagickSVNRevision  "5364"
+#define MagickSVNRevision  "exported"
 #define MagickLibVersion  0x700
 #define MagickLibVersionText  "7.0.0"
 #define MagickLibVersionNumber  7,0,0
 #define MagickLibAddendum  "-0"
 #define MagickLibInterface  7
 #define MagickLibMinInterface  7
-#define MagickReleaseDate  "2011-09-25"
+#define MagickReleaseDate  "2011-09-24"
 #define MagickChangeDate   "20110801"
 #define MagickAuthoritativeURL  "http://www.imagemagick.org"
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
index 93ad8fccc57e8fb66e97cbd4169c32442bfee3eb..7cb751ae122d5f71bcda9d0dbff0ae8377dc76ee 100644 (file)
@@ -1426,7 +1426,8 @@ static MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image,
     dpx.file.project);
   value=GetDPXProperty(image_info,image,"dpx:file.copyright");
   if (value != (const char *) NULL)
-    (void) strncpy(dpx.file.copyright,value,sizeof(dpx.file.copyright));
+    (void) strncpy(dpx.file.copyright,value,
+      sizeof(dpx.file.copyright));
   offset+=WriteBlob(image,sizeof(dpx.file.copyright),(unsigned char *)
     dpx.file.copyright);
   dpx.file.encrypt_key=(~0U);