From 4ee2b0c11849aca22cbc22f1fb48e3ee9c8eaba5 Mon Sep 17 00:00:00 2001 From: cristy Date: Tue, 15 May 2012 00:30:35 +0000 Subject: [PATCH] --- Magick++/lib/Image.cpp | 5 ++- MagickCore/attribute.c | 12 +++--- MagickCore/cache-private.h | 1 + MagickCore/cache.c | 37 +++++++++++++++- MagickCore/cache.h | 1 + MagickCore/channel.c | 4 +- MagickCore/colormap.c | 4 +- MagickCore/colorspace.c | 78 ++++++++++++++++----------------- MagickCore/compare.c | 14 +++--- MagickCore/composite.c | 10 ++--- MagickCore/decorate.c | 8 ++-- MagickCore/distort.c | 4 +- MagickCore/draw.c | 8 ++-- MagickCore/effect.c | 38 ++++++++-------- MagickCore/enhance.c | 62 +++++++++++++------------- MagickCore/feature.c | 12 +++--- MagickCore/fx.c | 26 +++++------ MagickCore/image-view.c | 10 ++--- MagickCore/image.c | 16 +++---- MagickCore/morphology.c | 4 +- MagickCore/paint.c | 8 ++-- MagickCore/prepress.c | 2 +- MagickCore/profile.c | 2 +- MagickCore/quantize.c | 10 ++--- MagickCore/resize.c | 8 ++-- MagickCore/segment.c | 2 +- MagickCore/shear.c | 22 +++++----- MagickCore/statistic.c | 86 ++++++++++++++++++------------------- MagickCore/thread-private.h | 5 ++- MagickCore/threshold.c | 14 +++--- MagickCore/transform.c | 22 +++++----- MagickWand/wand-view.c | 10 ++--- coders/hald.c | 2 +- filters/analyze.c | 2 +- 34 files changed, 295 insertions(+), 254 deletions(-) diff --git a/Magick++/lib/Image.cpp b/Magick++/lib/Image.cpp index 238634441..677e66aa4 100644 --- a/Magick++/lib/Image.cpp +++ b/Magick++/lib/Image.cpp @@ -958,7 +958,10 @@ void Magick::Image::extent ( const Geometry &geometry_, const Color &backgroundC } void Magick::Image::extent ( const Geometry &geometry_, const GravityType gravity_ ) { - image()->gravity = gravity_; + RectangleInfo geometry; + + SetGeometry(image(), &geometry); + GravityAdjustGeometry(image()->columns, image()->rows, gravity_, &geometry); extent ( geometry_ ); } void Magick::Image::extent ( const Geometry &geometry_, const Color &backgroundColor_, const GravityType gravity_ ) diff --git a/MagickCore/attribute.c b/MagickCore/attribute.c index 158de0a96..a389a1983 100644 --- a/MagickCore/attribute.c +++ b/MagickCore/attribute.c @@ -169,7 +169,7 @@ MagickExport RectangleInfo GetImageBoundingBox(const Image *image, GetPixelInfo(image,&zero); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -388,7 +388,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) } #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -452,7 +452,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -936,7 +936,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -980,7 +980,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, range); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1044,7 +1044,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/cache-private.h b/MagickCore/cache-private.h index a6be29f92..fac96c083 100644 --- a/MagickCore/cache-private.h +++ b/MagickCore/cache-private.h @@ -23,6 +23,7 @@ extern "C" { #endif #include +#include "MagickCore/cache.h" #include "MagickCore/random_.h" #include "MagickCore/thread-private.h" #include "MagickCore/semaphore.h" diff --git a/MagickCore/cache.c b/MagickCore/cache.c index 669f12c6e..017722a43 100644 --- a/MagickCore/cache.c +++ b/MagickCore/cache.c @@ -3644,6 +3644,41 @@ MagickPrivate const Quantum *GetVirtualPixelsNexus(const Cache cache, % % % % % % ++ I s P i x e l C a c h e I n C o r e % +% % +% % +% % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% IsPixelCacheInCore() returns MagickTrue if the pixel cache is memory based +% otherwise MagickFalse. +% +% The format of the IsPixelCacheInCore() method is: +% +% MagickBooleanType IsPixelCacheInCore(const Image *image) +% +% A description of each parameter follows: +% +% o image: the image. +% +*/ +MagickExport MagickBooleanType IsPixelCacheInCore(const Image *image) +{ + CacheInfo + *cache_info; + + assert(image != (Image *) NULL); + assert(image->signature == MagickSignature); + assert(image->cache != (Cache) NULL); + cache_info=(CacheInfo *) image->cache; + return(cache_info->type == DiskCache ? MagickFalse : MagickTrue); +} + +/* +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % +% % +% % + O p e n P i x e l C a c h e % % % % % @@ -4913,7 +4948,7 @@ static MagickBooleanType SetCacheAlphaChannel(Image *image,const Quantum alpha, image_view=AcquireVirtualCacheView(image,exception); /* must be virtual */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/cache.h b/MagickCore/cache.h index 6b1e5d04e..52fb4dc8d 100644 --- a/MagickCore/cache.h +++ b/MagickCore/cache.h @@ -39,6 +39,7 @@ extern MagickExport MagickBooleanType ExceptionInfo *), GetOneVirtualPixelInfo(const Image *,const VirtualPixelMethod, const ssize_t,const ssize_t,PixelInfo *,ExceptionInfo *), + IsPixelCacheInCore(const Image *), PersistPixelCache(Image *,const char *,const MagickBooleanType, MagickOffsetType *,ExceptionInfo *), SyncAuthenticPixels(Image *,ExceptionInfo *) magick_hot_spot; diff --git a/MagickCore/channel.c b/MagickCore/channel.c index 37f7a5dd9..2c93558bc 100644 --- a/MagickCore/channel.c +++ b/MagickCore/channel.c @@ -141,7 +141,7 @@ static MagickBooleanType ChannelImage(Image *destination_image, width=MagickMin(source_image->columns,destination_image->columns); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=0; y < (ssize_t) height; y++) { @@ -656,7 +656,7 @@ MagickExport Image *SeparateImage(const Image *image, separate_view=AcquireAuthenticCacheView(separate_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/colormap.c b/MagickCore/colormap.c index dc3128ab4..e1ab714ff 100644 --- a/MagickCore/colormap.c +++ b/MagickCore/colormap.c @@ -206,7 +206,7 @@ MagickExport MagickBooleanType CycleColormapImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -331,7 +331,7 @@ MagickExport MagickBooleanType SortColormapByIntensity(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) image->colormap[i].alpha=(double) i; diff --git a/MagickCore/colorspace.c b/MagickCore/colorspace.c index dbf6b4c3c..7697acb88 100644 --- a/MagickCore/colorspace.c +++ b/MagickCore/colorspace.c @@ -245,7 +245,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -305,7 +305,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -362,7 +362,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -427,7 +427,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -492,7 +492,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -557,7 +557,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -664,7 +664,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, 0.002/film_gamma); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) logmap[i]=ScaleMapToQuantum((MagickRealType) (MaxMap*(reference_white+ @@ -673,7 +673,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -749,7 +749,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, primary_info.z=(double) (MaxMap+1.0)/2.0; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -775,7 +775,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -809,7 +809,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, primary_info.z=(double) (MaxMap+1.0)/2.0; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -834,7 +834,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -866,7 +866,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, primary_info.z=(double) (MaxMap+1.0)/2.0; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -890,7 +890,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -925,7 +925,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -996,7 +996,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, primary_info.z=(double) (MaxMap+1.0)/2.0; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -1028,7 +1028,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, primary_info.z=(double) (MaxMap+1.0)/2.0; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -1060,7 +1060,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, primary_info.z=(double) (MaxMap+1.0)/2.0; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -1083,7 +1083,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -1114,7 +1114,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1751,7 +1751,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1811,7 +1811,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1868,7 +1868,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1935,7 +1935,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2002,7 +2002,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2069,7 +2069,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2185,7 +2185,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2268,7 +2268,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2304,7 +2304,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2338,7 +2338,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2369,7 +2369,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2404,7 +2404,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2433,7 +2433,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2467,7 +2467,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2503,7 +2503,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2537,7 +2537,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2564,7 +2564,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -2595,7 +2595,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2700,7 +2700,7 @@ static MagickBooleanType TransformsRGBImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { diff --git a/MagickCore/compare.c b/MagickCore/compare.c index f0ed87504..c095b39a3 100644 --- a/MagickCore/compare.c +++ b/MagickCore/compare.c @@ -179,7 +179,7 @@ MagickExport Image *CompareImages(Image *image,const Image *reconstruct_image, highlight_view=AcquireAuthenticCacheView(highlight_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -328,7 +328,7 @@ static MagickBooleanType GetAbsoluteDistortion(const Image *image, reconstruct_view=AcquireVirtualCacheView(reconstruct_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -453,7 +453,7 @@ static MagickBooleanType GetFuzzDistortion(const Image *image, reconstruct_view=AcquireVirtualCacheView(reconstruct_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -554,7 +554,7 @@ static MagickBooleanType GetMeanAbsoluteDistortion(const Image *image, reconstruct_view=AcquireVirtualCacheView(reconstruct_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -749,7 +749,7 @@ static MagickBooleanType GetMeanSquaredDistortion(const Image *image, reconstruct_view=AcquireVirtualCacheView(reconstruct_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -984,7 +984,7 @@ static MagickBooleanType GetPeakAbsoluteDistortion(const Image *image, reconstruct_view=AcquireVirtualCacheView(reconstruct_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1594,7 +1594,7 @@ MagickExport Image *SimilarityImage(Image *image,const Image *reference, similarity_view=AcquireAuthenticCacheView(similarity_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) (image->rows-reference->rows+1); y++) { diff --git a/MagickCore/composite.c b/MagickCore/composite.c index e2bf6048d..431949e2d 100644 --- a/MagickCore/composite.c +++ b/MagickCore/composite.c @@ -335,7 +335,7 @@ static MagickBooleanType CompositeOverImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -609,7 +609,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) composite_image->rows; y++) { @@ -1166,7 +1166,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2365,7 +2365,7 @@ MagickExport MagickBooleanType TextureImage(Image *image,const Image *texture, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y+=(ssize_t) texture_image->rows) { @@ -2415,7 +2415,7 @@ MagickExport MagickBooleanType TextureImage(Image *image,const Image *texture, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/decorate.c b/MagickCore/decorate.c index e1a6cde29..b6c83e2c1 100644 --- a/MagickCore/decorate.c +++ b/MagickCore/decorate.c @@ -385,7 +385,7 @@ MagickExport Image *FrameImage(const Image *image,const FrameInfo *frame_info, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -690,7 +690,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) raise_info->height; y++) { @@ -796,7 +796,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=(ssize_t) raise_info->height; y < (ssize_t) (image->rows-raise_info->height); y++) { @@ -879,7 +879,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=(ssize_t) (image->rows-raise_info->height); y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/distort.c b/MagickCore/distort.c index 6e17f5fb1..6aa3abe4b 100644 --- a/MagickCore/distort.c +++ b/MagickCore/distort.c @@ -2314,7 +2314,7 @@ MagickExport Image *DistortImage(const Image *image,DistortImageMethod method, distort_view=AcquireAuthenticCacheView(distort_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (j=0; j < (ssize_t) distort_image->rows; j++) { @@ -3039,7 +3039,7 @@ MagickExport Image *SparseColorImage(const Image *image, sparse_view=AcquireAuthenticCacheView(sparse_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (j=0; j < (ssize_t) sparse_image->rows; j++) { diff --git a/MagickCore/draw.c b/MagickCore/draw.c index 024a20e9d..b70991040 100644 --- a/MagickCore/draw.c +++ b/MagickCore/draw.c @@ -1169,7 +1169,7 @@ MagickExport MagickBooleanType DrawAffineImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(image,width,height,1) #endif for (y=start; y <= stop; y++) { @@ -3261,7 +3261,7 @@ MagickExport MagickBooleanType DrawGradientImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(image,width,height,1) #endif for (y=bounding_box.y; y < (ssize_t) bounding_box.height; y++) { @@ -3874,7 +3874,7 @@ static MagickBooleanType DrawPolygonPrimitive(Image *image, stop=(ssize_t) floor(bounds.y2+0.5); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(image,width,height,1) #endif for (y=start; y <= stop; y++) { @@ -3937,7 +3937,7 @@ static MagickBooleanType DrawPolygonPrimitive(Image *image, stop=(ssize_t) floor(bounds.y2+0.5); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(image,width,height,1) #endif for (y=start; y <= stop; y++) { diff --git a/MagickCore/effect.c b/MagickCore/effect.c index 02390c4b2..c1e9067eb 100644 --- a/MagickCore/effect.c +++ b/MagickCore/effect.c @@ -295,7 +295,7 @@ MagickExport Image *AdaptiveBlurImage(const Image *image,const double radius, blur_view=AcquireAuthenticCacheView(blur_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) blur_image->rows; y++) { @@ -622,7 +622,7 @@ MagickExport Image *AdaptiveSharpenImage(const Image *image,const double radius, sharp_view=AcquireAuthenticCacheView(sharp_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) sharp_image->rows; y++) { @@ -952,7 +952,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius, blur_view=AcquireAuthenticCacheView(blur_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1082,7 +1082,7 @@ MagickExport Image *BlurImage(const Image *image,const double radius, blur_view=AcquireAuthenticCacheView(blur_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (x=0; x < (ssize_t) blur_image->columns; x++) { @@ -1273,9 +1273,9 @@ MagickExport Image *ConvolveImage(const Image *image, % */ -static void Hull(const ssize_t x_offset,const ssize_t y_offset, - const size_t columns,const size_t rows,const int polarity,Quantum *restrict f, - Quantum *restrict g) +static void Hull(const Image *image,const ssize_t x_offset, + const ssize_t y_offset,const size_t columns,const size_t rows, + const int polarity,Quantum *restrict f,Quantum *restrict g) { register Quantum *p, @@ -1293,7 +1293,7 @@ static void Hull(const ssize_t x_offset,const ssize_t y_offset, r=p+(y_offset*(columns+2)+x_offset); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(columns,rows,1) + dynamic_number_threads(image,columns,rows,1) #endif for (y=0; y < (ssize_t) rows; y++) { @@ -1330,7 +1330,7 @@ static void Hull(const ssize_t x_offset,const ssize_t y_offset, s=q-(y_offset*(columns+2)+x_offset); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) \ - dynamic_number_threads(columns,rows,1) + dynamic_number_threads(image,columns,rows,1) #endif for (y=0; y < (ssize_t) rows; y++) { @@ -1483,10 +1483,10 @@ MagickExport Image *DespeckleImage(const Image *image,ExceptionInfo *exception) (void) ResetMagickMemory(buffer,0,length*sizeof(*buffer)); for (k=0; k < 4; k++) { - Hull(X[k],Y[k],image->columns,image->rows,1,pixels,buffer); - Hull(-X[k],-Y[k],image->columns,image->rows,1,pixels,buffer); - Hull(-X[k],-Y[k],image->columns,image->rows,-1,pixels,buffer); - Hull(X[k],Y[k],image->columns,image->rows,-1,pixels,buffer); + Hull(image,X[k],Y[k],image->columns,image->rows,1,pixels,buffer); + Hull(image,-X[k],-Y[k],image->columns,image->rows,1,pixels,buffer); + Hull(image,-X[k],-Y[k],image->columns,image->rows,-1,pixels,buffer); + Hull(image,X[k],Y[k],image->columns,image->rows,-1,pixels,buffer); } j=(ssize_t) image->columns+2; for (y=0; y < (ssize_t) image->rows; y++) @@ -1956,7 +1956,7 @@ MagickExport Image *MotionBlurImage(const Image *image,const double radius, blur_view=AcquireAuthenticCacheView(blur_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2734,7 +2734,7 @@ MagickExport Image *RadialBlurImage(const Image *image,const double angle, blur_view=AcquireAuthenticCacheView(blur_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3029,7 +3029,7 @@ MagickExport Image *SelectiveBlurImage(const Image *image,const double radius, blur_view=AcquireAuthenticCacheView(blur_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3283,7 +3283,7 @@ MagickExport Image *ShadeImage(const Image *image,const MagickBooleanType gray, shade_view=AcquireAuthenticCacheView(shade_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3611,7 +3611,7 @@ MagickExport Image *SpreadImage(const Image *image,const double radius, spread_view=AcquireAuthenticCacheView(spread_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3751,7 +3751,7 @@ MagickExport Image *UnsharpMaskImage(const Image *image,const double radius, unsharp_view=AcquireAuthenticCacheView(unsharp_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/enhance.c b/MagickCore/enhance.c index ac870bc41..91e25c49a 100644 --- a/MagickCore/enhance.c +++ b/MagickCore/enhance.c @@ -344,7 +344,7 @@ MagickExport MagickBooleanType ClutImage(Image *image,const Image *clut_image, clut_view=AcquireVirtualCacheView(clut_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -357,7 +357,7 @@ MagickExport MagickBooleanType ClutImage(Image *image,const Image *clut_image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -707,7 +707,7 @@ MagickExport MagickBooleanType ColorDecisionListImage(Image *image, image->filename); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -728,7 +728,7 @@ MagickExport MagickBooleanType ColorDecisionListImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -756,7 +756,7 @@ MagickExport MagickBooleanType ColorDecisionListImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -912,7 +912,7 @@ MagickExport MagickBooleanType ContrastImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1099,7 +1099,7 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image, number_channels=GetPixelChannels(image); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) number_channels; i++) { @@ -1137,7 +1137,7 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image, number_channels=GetPixelChannels(image); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) number_channels; i++) { @@ -1169,7 +1169,7 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (j=0; j < (ssize_t) image->colors; j++) { @@ -1211,7 +1211,7 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1364,7 +1364,7 @@ MagickExport Image *EnhanceImage(const Image *image,ExceptionInfo *exception) enhance_view=AcquireAuthenticCacheView(enhance_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1596,7 +1596,7 @@ MagickExport MagickBooleanType EqualizeImage(Image *image, number_channels=GetPixelChannels(image); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) number_channels; i++) { @@ -1618,7 +1618,7 @@ MagickExport MagickBooleanType EqualizeImage(Image *image, number_channels=GetPixelChannels(image); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) number_channels; i++) { @@ -1648,7 +1648,7 @@ MagickExport MagickBooleanType EqualizeImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (j=0; j < (ssize_t) image->colors; j++) { @@ -1693,7 +1693,7 @@ MagickExport MagickBooleanType EqualizeImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1832,7 +1832,7 @@ MagickExport MagickBooleanType GammaImage(Image *image,const double gamma, if (gamma != 0.0) #if defined(MAGICKCORE_OPENMP_SUPPORT) && (MaxMap > 256) #pragma omp parallel for \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) gamma_map[i]=ScaleMapToQuantum((MagickRealType) (MaxMap*pow((double) i/ @@ -1844,7 +1844,7 @@ MagickExport MagickBooleanType GammaImage(Image *image,const double gamma, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -1870,7 +1870,7 @@ MagickExport MagickBooleanType GammaImage(Image *image,const double gamma, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2040,7 +2040,7 @@ MagickExport MagickBooleanType HaldClutImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2221,7 +2221,7 @@ MagickExport MagickBooleanType LevelImage(Image *image,const double black_point, if (image->storage_class == PseudoClass) #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -2249,7 +2249,7 @@ MagickExport MagickBooleanType LevelImage(Image *image,const double black_point, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2389,7 +2389,7 @@ MagickExport MagickBooleanType LevelizeImage(Image *image, if (image->storage_class == PseudoClass) #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -2417,7 +2417,7 @@ MagickExport MagickBooleanType LevelizeImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2902,7 +2902,7 @@ MagickExport MagickBooleanType ModulateImage(Image *image,const char *modulate, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) switch (colorspace) @@ -2939,7 +2939,7 @@ MagickExport MagickBooleanType ModulateImage(Image *image,const char *modulate, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3072,7 +3072,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -3101,7 +3101,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, { #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3175,7 +3175,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3355,7 +3355,7 @@ MagickExport MagickBooleanType SigmoidalContrastImage(Image *image, (void) ResetMagickMemory(sigmoidal_map,0,(MaxMap+1)*sizeof(*sigmoidal_map)); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i <= (ssize_t) MaxMap; i++) { @@ -3419,7 +3419,7 @@ MagickExport MagickBooleanType SigmoidalContrastImage(Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -3445,7 +3445,7 @@ MagickExport MagickBooleanType SigmoidalContrastImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/feature.c b/MagickCore/feature.c index 016e19e85..0d8e695e3 100644 --- a/MagickCore/feature.c +++ b/MagickCore/feature.c @@ -224,7 +224,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -595,7 +595,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(number_grays,number_grays,1) + dynamic_number_threads(image,number_grays,number_grays,1) #endif for (i=0; i < 4; i++) { @@ -780,7 +780,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(number_grays,number_grays,1) + dynamic_number_threads(image,number_grays,number_grays,1) #endif for (i=0; i < 4; i++) { @@ -856,7 +856,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(number_grays,number_grays,1) + dynamic_number_threads(image,number_grays,number_grays,1) #endif for (i=0; i < 4; i++) { @@ -977,7 +977,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, (void) ResetMagickMemory(&sum_squares,0,sizeof(sum_squares)); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(number_grays,number_grays,1) + dynamic_number_threads(image,number_grays,number_grays,1) #endif for (i=0; i < 4; i++) { @@ -1129,7 +1129,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(number_grays,number_grays,1) + dynamic_number_threads(image,number_grays,number_grays,1) #endif for (i=0; i < 4; i++) { diff --git a/MagickCore/fx.c b/MagickCore/fx.c index 971524d21..813e36edf 100644 --- a/MagickCore/fx.c +++ b/MagickCore/fx.c @@ -312,7 +312,7 @@ MagickExport Image *AddNoiseImage(const Image *image,const NoiseType noise_type, key=GetRandomSecretKey(random_info[0]); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -479,7 +479,7 @@ MagickExport Image *BlueShiftImage(const Image *image,const double factor, shift_view=AcquireAuthenticCacheView(shift_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -742,7 +742,7 @@ MagickExport Image *ColorizeImage(const Image *image,const char *blend, colorize_view=AcquireAuthenticCacheView(colorize_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -949,7 +949,7 @@ MagickExport Image *ColorMatrixImage(const Image *image, color_view=AcquireAuthenticCacheView(color_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3044,7 +3044,7 @@ MagickExport Image *FxImage(const Image *image,const char *expression, fx_view=AcquireAuthenticCacheView(fx_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) fx_image->rows; y++) { @@ -3243,7 +3243,7 @@ MagickExport Image *ImplodeImage(const Image *image,const double amount, implode_view=AcquireAuthenticCacheView(implode_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3488,7 +3488,7 @@ MagickExport Image *MorphImages(const Image *image, morph_view=AcquireAuthenticCacheView(morph_images,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) morph_images->rows; y++) { @@ -4144,7 +4144,7 @@ MagickExport Image *SepiaToneImage(const Image *image,const double threshold, sepia_view=AcquireAuthenticCacheView(sepia_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -4435,7 +4435,7 @@ MagickExport Image *SketchImage(const Image *image,const double radius, random_view=AcquireAuthenticCacheView(random_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif for (y=0; y < (ssize_t) random_image->rows; y++) { @@ -4609,7 +4609,7 @@ MagickExport MagickBooleanType SolarizeImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -5094,7 +5094,7 @@ MagickExport Image *SwirlImage(const Image *image,double degrees, swirl_view=AcquireAuthenticCacheView(swirl_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -5328,7 +5328,7 @@ MagickExport Image *TintImage(const Image *image,const char *blend, tint_view=AcquireAuthenticCacheView(tint_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -5632,7 +5632,7 @@ MagickExport Image *WaveImage(const Image *image,const double amplitude, BackgroundVirtualPixelMethod); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) wave_image->rows; y++) { diff --git a/MagickCore/image-view.c b/MagickCore/image-view.c index 28be5e71c..105fe9b37 100644 --- a/MagickCore/image-view.c +++ b/MagickCore/image-view.c @@ -244,7 +244,7 @@ MagickExport MagickBooleanType DuplexTransferImageViewIterator( width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { @@ -556,7 +556,7 @@ MagickExport MagickBooleanType GetImageViewIterator(ImageView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { @@ -904,7 +904,7 @@ MagickExport MagickBooleanType SetImageViewIterator(ImageView *destination, width=destination->extent.width-destination->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(destination_image,width,height,1) #endif for (y=destination->extent.y; y < (ssize_t) destination->extent.height; y++) { @@ -1032,7 +1032,7 @@ MagickExport MagickBooleanType TransferImageViewIterator(ImageView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { @@ -1163,7 +1163,7 @@ MagickExport MagickBooleanType UpdateImageViewIterator(ImageView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { diff --git a/MagickCore/image.c b/MagickCore/image.c index fdb9edcee..80abcb8c0 100644 --- a/MagickCore/image.c +++ b/MagickCore/image.c @@ -536,7 +536,7 @@ MagickExport Image *AppendImages(const Image *images, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1646,7 +1646,7 @@ MagickExport MagickBooleanType IsHighDynamicRangeImage(const Image *image, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1901,7 +1901,7 @@ MagickExport Image *NewMagickImage(const ImageInfo *image_info, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2173,7 +2173,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2252,7 +2252,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2440,7 +2440,7 @@ MagickExport MagickBooleanType SetImageColor(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3094,7 +3094,7 @@ MagickExport MagickBooleanType SetImageAlpha(Image *image,const Quantum alpha, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3749,7 +3749,7 @@ MagickExport MagickBooleanType SyncImage(Image *image,ExceptionInfo *exception) image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(range_exception,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/morphology.c b/MagickCore/morphology.c index be2c8d7c3..05740d255 100644 --- a/MagickCore/morphology.c +++ b/MagickCore/morphology.c @@ -2590,7 +2590,7 @@ static ssize_t MorphologyPrimitive(const Image *image,Image *morphology_image, #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (x=0; x < (ssize_t) image->columns; x++) { @@ -2767,7 +2767,7 @@ static ssize_t MorphologyPrimitive(const Image *image,Image *morphology_image, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/paint.c b/MagickCore/paint.c index 05695c996..1b656e798 100644 --- a/MagickCore/paint.c +++ b/MagickCore/paint.c @@ -592,7 +592,7 @@ MagickExport Image *OilPaintImage(const Image *image,const double radius, paint_view=AcquireAuthenticCacheView(paint_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -793,7 +793,7 @@ MagickExport MagickBooleanType OpaquePaintImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -920,7 +920,7 @@ MagickExport MagickBooleanType TransparentPaintImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1047,7 +1047,7 @@ MagickExport MagickBooleanType TransparentPaintImageChroma(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/prepress.c b/MagickCore/prepress.c index 3e4ee7206..1b7c34435 100644 --- a/MagickCore/prepress.c +++ b/MagickCore/prepress.c @@ -113,7 +113,7 @@ MagickExport double GetImageTotalInkDensity(Image *image, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/profile.c b/MagickCore/profile.c index ffb971975..97b7126a0 100644 --- a/MagickCore/profile.c +++ b/MagickCore/profile.c @@ -6042,7 +6042,7 @@ MagickExport MagickBooleanType ProfileImage(Image *image,const char *name, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/quantize.c b/MagickCore/quantize.c index 71dbdb2a6..81f872439 100644 --- a/MagickCore/quantize.c +++ b/MagickCore/quantize.c @@ -543,7 +543,7 @@ static MagickBooleanType AssignImageColors(Image *image,CubeInfo *cube_info, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2380,7 +2380,7 @@ MagickExport MagickBooleanType PosterizeImage(Image *image,const size_t levels, if (image->storage_class == PseudoClass) #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,1,1) + dynamic_number_threads(image,image->columns,1,1) #endif for (i=0; i < (ssize_t) image->colors; i++) { @@ -2408,7 +2408,7 @@ MagickExport MagickBooleanType PosterizeImage(Image *image,const size_t levels, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3305,7 +3305,7 @@ static MagickBooleanType SetGrayscaleImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -3383,7 +3383,7 @@ static MagickBooleanType SetGrayscaleImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/resize.c b/MagickCore/resize.c index 2f31b3b79..3fe7b1e8f 100644 --- a/MagickCore/resize.c +++ b/MagickCore/resize.c @@ -1618,7 +1618,7 @@ MagickExport Image *InterpolativeResizeImage(const Image *image, scale.y=(double) image->rows/resize_image->rows; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) resize_image->rows; y++) { @@ -2227,7 +2227,7 @@ static MagickBooleanType HorizontalFilter(const ResizeFilter *resize_filter, resize_view=AcquireAuthenticCacheView(resize_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (x=0; x < (ssize_t) resize_image->columns; x++) { @@ -2445,7 +2445,7 @@ static MagickBooleanType VerticalFilter(const ResizeFilter *resize_filter, resize_view=AcquireAuthenticCacheView(resize_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) resize_image->rows; y++) { @@ -2800,7 +2800,7 @@ MagickExport Image *SampleImage(const Image *image,const size_t columns, sample_view=AcquireAuthenticCacheView(sample_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) sample_image->rows; y++) { diff --git a/MagickCore/segment.c b/MagickCore/segment.c index 758e3f8ad..8d506de15 100644 --- a/MagickCore/segment.c +++ b/MagickCore/segment.c @@ -533,7 +533,7 @@ static MagickBooleanType Classify(Image *image,short **extrema, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/shear.c b/MagickCore/shear.c index 72dfac167..77e47f051 100644 --- a/MagickCore/shear.c +++ b/MagickCore/shear.c @@ -511,7 +511,7 @@ static inline MagickBooleanType SetRadonCell(const RadonInfo *radon_info, return(MagickTrue); } -static void RadonProjection(RadonInfo *source_cells, +static void RadonProjection(const Image *image,RadonInfo *source_cells, RadonInfo *destination_cells,const ssize_t sign,size_t *projection) { RadonInfo @@ -573,7 +573,7 @@ static void RadonProjection(RadonInfo *source_cells, } #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) \ - dynamic_number_threads(p->width,p->height,1) + dynamic_number_threads(image,p->width,p->height,1) #endif for (x=0; x < (ssize_t) p->width; x++) { @@ -654,7 +654,7 @@ static MagickBooleanType RadonTransform(const Image *image, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -700,11 +700,11 @@ static MagickBooleanType RadonTransform(const Image *image, (void) SetRadonCell(source_cells,--i,y,bits[byte]); } } - RadonProjection(source_cells,destination_cells,-1,projection); + RadonProjection(image,source_cells,destination_cells,-1,projection); (void) ResetRadonCells(source_cells); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -750,7 +750,7 @@ static MagickBooleanType RadonTransform(const Image *image, (void) SetRadonCell(source_cells,i++,y,bits[byte]); } } - RadonProjection(source_cells,destination_cells,1,projection); + RadonProjection(image,source_cells,destination_cells,1,projection); image_view=DestroyCacheView(image_view); destination_cells=DestroyRadonInfo(destination_cells); source_cells=DestroyRadonInfo(source_cells); @@ -1027,7 +1027,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, GetPixelCacheTileSize(image,&tile_width,&tile_height); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (tile_y=0; tile_y < (ssize_t) image->rows; tile_y+=(ssize_t) tile_height) { @@ -1152,7 +1152,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1249,7 +1249,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, GetPixelCacheTileSize(image,&tile_width,&tile_height); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (tile_y=0; tile_y < (ssize_t) image->rows; tile_y+=(ssize_t) tile_height) { @@ -1452,7 +1452,7 @@ static MagickBooleanType XShearImage(Image *image,const MagickRealType degrees, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(image,width,height,1) #endif for (y=0; y < (ssize_t) height; y++) { @@ -1668,7 +1668,7 @@ static MagickBooleanType YShearImage(Image *image,const MagickRealType degrees, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(image,width,height,1) #endif for (x=0; x < (ssize_t) width; x++) { diff --git a/MagickCore/statistic.c b/MagickCore/statistic.c index c844b97d7..6b0a90d26 100644 --- a/MagickCore/statistic.c +++ b/MagickCore/statistic.c @@ -434,7 +434,7 @@ MagickExport Image *EvaluateImages(const Image *images, *next; Image - *evaluate_image; + *image; MagickBooleanType status; @@ -476,20 +476,20 @@ MagickExport Image *EvaluateImages(const Image *images, /* Initialize evaluate next attributes. */ - evaluate_image=CloneImage(images,images->columns,images->rows,MagickTrue, + image=CloneImage(images,images->columns,images->rows,MagickTrue, exception); - if (evaluate_image == (Image *) NULL) + if (image == (Image *) NULL) return((Image *) NULL); - if (SetImageStorageClass(evaluate_image,DirectClass,exception) == MagickFalse) + if (SetImageStorageClass(image,DirectClass,exception) == MagickFalse) { - evaluate_image=DestroyImage(evaluate_image); + image=DestroyImage(image); return((Image *) NULL); } number_images=GetImageListLength(images); evaluate_pixels=AcquirePixelThreadSet(images,number_images); if (evaluate_pixels == (PixelChannels **) NULL) { - evaluate_image=DestroyImage(evaluate_image); + image=DestroyImage(image); (void) ThrowMagickException(exception,GetMagickModule(), ResourceLimitError,"MemoryAllocationFailed","'%s'",images->filename); return((Image *) NULL); @@ -501,14 +501,14 @@ MagickExport Image *EvaluateImages(const Image *images, progress=0; random_info=AcquireRandomInfoThreadSet(); key=GetRandomSecretKey(random_info[0]); - evaluate_view=AcquireAuthenticCacheView(evaluate_image,exception); + evaluate_view=AcquireAuthenticCacheView(image,exception); if (op == MedianEvaluateOperator) { #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(images->columns,images->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif - for (y=0; y < (ssize_t) evaluate_image->rows; y++) + for (y=0; y < (ssize_t) image->rows; y++) { CacheView *image_view; @@ -531,14 +531,14 @@ MagickExport Image *EvaluateImages(const Image *images, if (status == MagickFalse) continue; q=QueueCacheViewAuthenticPixels(evaluate_view,0,y, - evaluate_image->columns,1,exception); + image->columns,1,exception); if (q == (Quantum *) NULL) { status=MagickFalse; continue; } evaluate_pixel=evaluate_pixels[id]; - for (x=0; x < (ssize_t) evaluate_image->columns; x++) + for (x=0; x < (ssize_t) image->columns; x++) { register ssize_t j, @@ -563,7 +563,7 @@ MagickExport Image *EvaluateImages(const Image *images, image_view=DestroyCacheView(image_view); break; } - for (i=0; i < (ssize_t) GetPixelChannels(evaluate_image); i++) + for (i=0; i < (ssize_t) GetPixelChannels(image); i++) { PixelChannel channel; @@ -572,8 +572,8 @@ MagickExport Image *EvaluateImages(const Image *images, evaluate_traits, traits; - channel=GetPixelChannelMapChannel(evaluate_image,i); - evaluate_traits=GetPixelChannelMapTraits(evaluate_image,channel); + channel=GetPixelChannelMapChannel(image,i); + evaluate_traits=GetPixelChannelMapTraits(image,channel); traits=GetPixelChannelMapTraits(next,channel); if ((traits == UndefinedPixelTrait) || (evaluate_traits == UndefinedPixelTrait)) @@ -581,7 +581,7 @@ MagickExport Image *EvaluateImages(const Image *images, if ((evaluate_traits & UpdatePixelTrait) == 0) continue; evaluate_pixel[j].channel[i]=ApplyEvaluateOperator( - random_info[id],GetPixelChannel(evaluate_image,channel,p),op, + random_info[id],GetPixelChannel(image,channel,p),op, evaluate_pixel[j].channel[i]); } image_view=DestroyCacheView(image_view); @@ -589,9 +589,9 @@ MagickExport Image *EvaluateImages(const Image *images, } qsort((void *) evaluate_pixel,number_images,sizeof(*evaluate_pixel), IntensityCompare); - for (k=0; k < (ssize_t) GetPixelChannels(evaluate_image); k++) + for (k=0; k < (ssize_t) GetPixelChannels(image); k++) q[k]=ClampToQuantum(evaluate_pixel[j/2].channel[k]); - q+=GetPixelChannels(evaluate_image); + q+=GetPixelChannels(image); } if (SyncCacheViewAuthenticPixels(evaluate_view,exception) == MagickFalse) status=MagickFalse; @@ -604,7 +604,7 @@ MagickExport Image *EvaluateImages(const Image *images, #pragma omp critical (MagickCore_EvaluateImages) #endif proceed=SetImageProgress(images,EvaluateImageTag,progress++, - evaluate_image->rows); + image->rows); if (proceed == MagickFalse) status=MagickFalse; } @@ -614,9 +614,9 @@ MagickExport Image *EvaluateImages(const Image *images, { #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(images->columns,images->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif - for (y=0; y < (ssize_t) evaluate_image->rows; y++) + for (y=0; y < (ssize_t) image->rows; y++) { CacheView *image_view; @@ -643,14 +643,14 @@ MagickExport Image *EvaluateImages(const Image *images, if (status == MagickFalse) continue; q=QueueCacheViewAuthenticPixels(evaluate_view,0,y, - evaluate_image->columns,1,exception); + image->columns,1,exception); if (q == (Quantum *) NULL) { status=MagickFalse; continue; } evaluate_pixel=evaluate_pixels[id]; - for (j=0; j < (ssize_t) evaluate_image->columns; j++) + for (j=0; j < (ssize_t) image->columns; j++) for (i=0; i < MaxPixelChannels; i++) evaluate_pixel[j].channel[i]=0.0; next=images; @@ -685,16 +685,16 @@ MagickExport Image *EvaluateImages(const Image *images, evaluate_traits, traits; - channel=GetPixelChannelMapChannel(evaluate_image,i); + channel=GetPixelChannelMapChannel(image,i); traits=GetPixelChannelMapTraits(next,channel); - evaluate_traits=GetPixelChannelMapTraits(evaluate_image,channel); + evaluate_traits=GetPixelChannelMapTraits(image,channel); if ((traits == UndefinedPixelTrait) || (evaluate_traits == UndefinedPixelTrait)) continue; if ((traits & UpdatePixelTrait) == 0) continue; evaluate_pixel[x].channel[i]=ApplyEvaluateOperator( - random_info[id],GetPixelChannel(evaluate_image,channel,p),j == + random_info[id],GetPixelChannel(image,channel,p),j == 0 ? AddEvaluateOperator : op,evaluate_pixel[x].channel[i]); } p+=GetPixelChannels(next); @@ -702,7 +702,7 @@ MagickExport Image *EvaluateImages(const Image *images, image_view=DestroyCacheView(image_view); next=GetNextImageInList(next); } - for (x=0; x < (ssize_t) evaluate_image->columns; x++) + for (x=0; x < (ssize_t) image->columns; x++) { register ssize_t i; @@ -711,13 +711,13 @@ MagickExport Image *EvaluateImages(const Image *images, { case MeanEvaluateOperator: { - for (i=0; i < (ssize_t) GetPixelChannels(evaluate_image); i++) + for (i=0; i < (ssize_t) GetPixelChannels(image); i++) evaluate_pixel[x].channel[i]/=(MagickRealType) number_images; break; } case MultiplyEvaluateOperator: { - for (i=0; i < (ssize_t) GetPixelChannels(evaluate_image); i++) + for (i=0; i < (ssize_t) GetPixelChannels(image); i++) { register ssize_t j; @@ -731,17 +731,17 @@ MagickExport Image *EvaluateImages(const Image *images, break; } } - for (x=0; x < (ssize_t) evaluate_image->columns; x++) + for (x=0; x < (ssize_t) image->columns; x++) { register ssize_t i; - if (GetPixelMask(evaluate_image,q) != 0) + if (GetPixelMask(image,q) != 0) { - q+=GetPixelChannels(evaluate_image); + q+=GetPixelChannels(image); continue; } - for (i=0; i < (ssize_t) GetPixelChannels(evaluate_image); i++) + for (i=0; i < (ssize_t) GetPixelChannels(image); i++) { PixelChannel channel; @@ -749,15 +749,15 @@ MagickExport Image *EvaluateImages(const Image *images, PixelTrait traits; - channel=GetPixelChannelMapChannel(evaluate_image,i); - traits=GetPixelChannelMapTraits(evaluate_image,channel); + channel=GetPixelChannelMapChannel(image,i); + traits=GetPixelChannelMapTraits(image,channel); if (traits == UndefinedPixelTrait) continue; if ((traits & UpdatePixelTrait) == 0) continue; q[i]=ClampToQuantum(evaluate_pixel[x].channel[i]); } - q+=GetPixelChannels(evaluate_image); + q+=GetPixelChannels(image); } if (SyncCacheViewAuthenticPixels(evaluate_view,exception) == MagickFalse) status=MagickFalse; @@ -770,7 +770,7 @@ MagickExport Image *EvaluateImages(const Image *images, #pragma omp critical (MagickCore_EvaluateImages) #endif proceed=SetImageProgress(images,EvaluateImageTag,progress++, - evaluate_image->rows); + image->rows); if (proceed == MagickFalse) status=MagickFalse; } @@ -780,8 +780,8 @@ MagickExport Image *EvaluateImages(const Image *images, evaluate_pixels=DestroyPixelThreadSet(evaluate_pixels); random_info=DestroyRandomInfoThreadSet(random_info); if (status == MagickFalse) - evaluate_image=DestroyImage(evaluate_image); - return(evaluate_image); + image=DestroyImage(image); + return(image); } MagickExport MagickBooleanType EvaluateImage(Image *image, @@ -820,7 +820,7 @@ MagickExport MagickBooleanType EvaluateImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1053,7 +1053,7 @@ MagickExport MagickBooleanType FunctionImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1317,7 +1317,7 @@ MagickExport MagickBooleanType GetImageKurtosis(const Image *image, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1446,7 +1446,7 @@ MagickExport MagickBooleanType GetImageRange(const Image *image,double *minima, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2268,7 +2268,7 @@ MagickExport Image *StatisticImage(const Image *image,const StatisticType type, statistic_view=AcquireAuthenticCacheView(statistic_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) statistic_image->rows; y++) { diff --git a/MagickCore/thread-private.h b/MagickCore/thread-private.h index 3ab40c9fc..dbe384838 100644 --- a/MagickCore/thread-private.h +++ b/MagickCore/thread-private.h @@ -22,6 +22,7 @@ extern "C" { #endif +#include #include #include @@ -29,11 +30,11 @@ extern "C" { Single threaded unless workload justifies the threading overhead. */ #define WorkloadThreshold() (16*GetMagickResourceLimit(ThreadResource)) -#define dynamic_number_threads(columns,rows,expression) \ +#define dynamic_number_threads(image,columns,rows,expression) \ if (((((columns) > WorkloadThreshold()) || \ ((rows) > WorkloadThreshold()))) && ((MagickSizeType) \ ((columns)*(rows)) > (WorkloadThreshold()*WorkloadThreshold())) && \ - (expression)) \ + (IsPixelCacheInCore(image) != MagickFalse) && (expression)) \ num_threads(GetMagickResourceLimit(ThreadResource)) #if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR > 10)) diff --git a/MagickCore/threshold.c b/MagickCore/threshold.c index 6b42c38dc..cca5978f5 100644 --- a/MagickCore/threshold.c +++ b/MagickCore/threshold.c @@ -206,7 +206,7 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image, threshold_view=AcquireAuthenticCacheView(threshold_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -393,7 +393,7 @@ MagickExport MagickBooleanType BilevelImage(Image *image,const double threshold, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -560,7 +560,7 @@ MagickExport MagickBooleanType BlackThresholdImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -703,7 +703,7 @@ MagickExport MagickBooleanType ClampImage(Image *image,ExceptionInfo *exception) image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1327,7 +1327,7 @@ MagickExport MagickBooleanType OrderedPosterizeImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1507,7 +1507,7 @@ MagickExport MagickBooleanType RandomThresholdImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,key == ~0UL) + dynamic_number_threads(image,image->columns,image->rows,key == ~0UL) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -1690,7 +1690,7 @@ MagickExport MagickBooleanType WhiteThresholdImage(Image *image, image_view=AcquireAuthenticCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickCore/transform.c b/MagickCore/transform.c index ddd492d14..ae45c8c56 100644 --- a/MagickCore/transform.c +++ b/MagickCore/transform.c @@ -161,7 +161,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info, chop_view=AcquireAuthenticCacheView(chop_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) extent.y; y++) { @@ -232,7 +232,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info, */ #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) (image->rows-(extent.y+extent.height)); y++) { @@ -588,7 +588,7 @@ MagickExport Image *CropImage(const Image *image,const RectangleInfo *geometry, crop_view=AcquireAuthenticCacheView(crop_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) crop_image->rows; y++) { @@ -950,7 +950,7 @@ MagickExport Image *ExcerptImage(const Image *image, excerpt_view=AcquireAuthenticCacheView(excerpt_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) excerpt_image->rows; y++) { @@ -1158,7 +1158,7 @@ MagickExport Image *FlipImage(const Image *image,ExceptionInfo *exception) flip_view=AcquireAuthenticCacheView(flip_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) flip_image->rows; y++) { @@ -1305,7 +1305,7 @@ MagickExport Image *FlopImage(const Image *image,ExceptionInfo *exception) flop_view=AcquireAuthenticCacheView(flop_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) flop_image->rows; y++) { @@ -1435,7 +1435,7 @@ static inline MagickBooleanType CopyImageRegion(Image *destination, destination_view=AcquireAuthenticCacheView(destination,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(status) \ - dynamic_number_threads(columns,rows,1) + dynamic_number_threads(source,columns,rows,1) #endif for (y=0; y < (ssize_t) rows; y++) { @@ -1764,7 +1764,7 @@ MagickExport Image *SpliceImage(const Image *image, splice_view=AcquireAuthenticCacheView(splice_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) splice_geometry.y; y++) { @@ -1869,7 +1869,7 @@ MagickExport Image *SpliceImage(const Image *image, } #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=(ssize_t) (splice_geometry.y+splice_geometry.height); y < (ssize_t) splice_image->rows; y++) @@ -2221,7 +2221,7 @@ MagickExport Image *TransposeImage(const Image *image,ExceptionInfo *exception) transpose_view=AcquireAuthenticCacheView(transpose_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { @@ -2371,7 +2371,7 @@ MagickExport Image *TransverseImage(const Image *image,ExceptionInfo *exception) transverse_view=AcquireAuthenticCacheView(transverse_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(progress,status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { diff --git a/MagickWand/wand-view.c b/MagickWand/wand-view.c index bd8e48310..fcab90029 100644 --- a/MagickWand/wand-view.c +++ b/MagickWand/wand-view.c @@ -292,7 +292,7 @@ WandExport MagickBooleanType DuplexTransferWandViewIterator(WandView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { @@ -545,7 +545,7 @@ WandExport MagickBooleanType GetWandViewIterator(WandView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { @@ -948,7 +948,7 @@ WandExport MagickBooleanType SetWandViewIterator(WandView *destination, width=destination->extent.width-destination->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(destination_image,width,height,1) #endif for (y=destination->extent.y; y < (ssize_t) destination->extent.height; y++) { @@ -1085,7 +1085,7 @@ WandExport MagickBooleanType TransferWandViewIterator(WandView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { @@ -1239,7 +1239,7 @@ WandExport MagickBooleanType UpdateWandViewIterator(WandView *source, width=source->extent.width-source->extent.x; #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static) shared(progress,status) \ - dynamic_number_threads(width,height,1) + dynamic_number_threads(source_image,width,height,1) #endif for (y=source->extent.y; y < (ssize_t) source->extent.height; y++) { diff --git a/coders/hald.c b/coders/hald.c index 236e58fec..fddddd651 100644 --- a/coders/hald.c +++ b/coders/hald.c @@ -127,7 +127,7 @@ static Image *ReadHALDImage(const ImageInfo *image_info, image->rows=(size_t) (level*cube_size); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,8) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y+=(ssize_t) level) { diff --git a/filters/analyze.c b/filters/analyze.c index b4005c486..81ddd0201 100644 --- a/filters/analyze.c +++ b/filters/analyze.c @@ -146,7 +146,7 @@ ModuleExport size_t analyzeImage(Image **images,const int argc, image_view=AcquireVirtualCacheView(image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ - dynamic_number_threads(image->columns,image->rows,1) + dynamic_number_threads(image,image->columns,image->rows,1) #endif for (y=0; y < (ssize_t) image->rows; y++) { -- 2.50.1