]> granicus.if.org Git - imagemagick/blobdiff - magick/cache-view.c
(no commit message)
[imagemagick] / magick / cache-view.c
index 9ce7c19072b0286d9c7a0d4db384dd33770a87f1..83e843e9896a505a0069f575d29a515c6491a94a 100644 (file)
@@ -23,7 +23,7 @@
 %                               February 2000                                 %
 %                                                                             %
 %                                                                             %
-%  Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization      %
+%  Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization      %
 %  dedicated to making software imaging solutions freely available.           %
 %                                                                             %
 %  You may not use this file except in compliance with the License.  You may  %
@@ -112,7 +112,7 @@ MagickExport CacheView *AcquireCacheView(const Image *image)
   assert(image->signature == MagickSignature);
   if (image->debug != MagickFalse)
     (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
-  cache_view=(CacheView *) AcquireAlignedMemory(1,sizeof(*cache_view));
+  cache_view=(CacheView *) AcquireMagickMemory(sizeof(*cache_view));
   if (cache_view == (CacheView *) NULL)
     ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
   (void) ResetMagickMemory(cache_view,0,sizeof(*cache_view));
@@ -159,7 +159,7 @@ MagickExport CacheView *CloneCacheView(const CacheView *cache_view)
   if (cache_view->debug != MagickFalse)
     (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",
       cache_view->image->filename);
-  clone_view=(CacheView *) AcquireAlignedMemory(1,sizeof(*clone_view));
+  clone_view=(CacheView *) AcquireMagickMemory(sizeof(*clone_view));
   if (clone_view == (CacheView *) NULL)
     ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
   (void) ResetMagickMemory(clone_view,0,sizeof(*clone_view));
@@ -207,7 +207,7 @@ MagickExport CacheView *DestroyCacheView(CacheView *cache_view)
       cache_view->number_threads);
   cache_view->image=DestroyImage(cache_view->image);
   cache_view->signature=(~MagickSignature);
-  cache_view=(CacheView *) RelinquishAlignedMemory(cache_view);
+  cache_view=(CacheView *) RelinquishMagickMemory(cache_view);
   return(cache_view);
 }
 \f
@@ -216,6 +216,39 @@ MagickExport CacheView *DestroyCacheView(CacheView *cache_view)
 %                                                                             %
 %                                                                             %
 %                                                                             %
+%   G e t C a c h e V i e w C h a n n e l s                                   %
+%                                                                             %
+%                                                                             %
+%                                                                             %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  GetCacheViewChannels() returns the image pixel channels associated with
+%  the specified view.
+%
+%  The format of the GetCacheViewChannels method is:
+%
+%      size_t GetCacheViewChannels(const CacheView *cache_view)
+%
+%  A description of each parameter follows:
+%
+%    o cache_view: the cache view.
+%
+*/
+MagickExport size_t GetCacheViewChannels(const CacheView *cache_view)
+{
+  assert(cache_view != (CacheView *) NULL);
+  assert(cache_view->signature == MagickSignature);
+  if (cache_view->debug != MagickFalse)
+    (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",
+      cache_view->image->filename);
+  return(GetPixelCacheChannels(cache_view->image->cache));
+}
+\f
+/*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                                                             %
+%                                                                             %
+%                                                                             %
 %   G e t C a c h e V i e w C o l o r s p a c e                               %
 %                                                                             %
 %                                                                             %
@@ -241,7 +274,7 @@ MagickExport ColorspaceType GetCacheViewColorspace(const CacheView *cache_view)
   if (cache_view->debug != MagickFalse)
     (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",
       cache_view->image->filename);
-  return(cache_view->image->colorspace);
+  return(GetPixelCacheColorspace(cache_view->image->cache));
 }
 \f
 /*
@@ -306,9 +339,6 @@ MagickExport MagickSizeType GetCacheViewExtent(const CacheView *cache_view)
   const int
     id = GetOpenMPThreadId();
 
-  MagickSizeType
-    extent;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   if (cache_view->debug != MagickFalse)
@@ -316,9 +346,8 @@ MagickExport MagickSizeType GetCacheViewExtent(const CacheView *cache_view)
       cache_view->image->filename);
   assert(cache_view->image->cache != (Cache) NULL);
   assert(id < (int) cache_view->number_threads);
-  extent=GetPixelCacheNexusExtent(cache_view->image->cache,
-    cache_view->nexus_info[id]);
-  return(extent);
+  return(GetPixelCacheNexusExtent(cache_view->image->cache,
+    cache_view->nexus_info[id]));
 }
 \f
 /*
@@ -351,7 +380,7 @@ MagickExport ClassType GetCacheViewStorageClass(const CacheView *cache_view)
   if (cache_view->debug != MagickFalse)
     (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",
       cache_view->image->filename);
-  return(cache_view->image->storage_class);
+  return(GetPixelCacheStorageClass(cache_view->image->cache));
 }
 \f
 /*
@@ -390,15 +419,11 @@ MagickExport PixelPacket *GetCacheViewAuthenticPixels(CacheView *cache_view,
   const int
     id = GetOpenMPThreadId();
 
-  PixelPacket
-    *pixels;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(id < (int) cache_view->number_threads);
-  pixels=GetAuthenticPixelCacheNexus(cache_view->image,x,y,columns,rows,
-    cache_view->nexus_info[id],exception);
-  return(pixels);
+  return(GetAuthenticPixelCacheNexus(cache_view->image,x,y,columns,rows,
+    cache_view->nexus_info[id],exception));
 }
 \f
 /*
@@ -483,16 +508,12 @@ MagickExport IndexPacket *GetCacheViewAuthenticIndexQueue(CacheView *cache_view)
   const int
     id = GetOpenMPThreadId();
 
-  IndexPacket
-    *indexes;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(cache_view->image->cache != (Cache) NULL);
   assert(id < (int) cache_view->number_threads);
-  indexes=GetPixelCacheNexusIndexes(cache_view->image->cache,
-    cache_view->nexus_info[id]);
-  return(indexes);
+  return(GetPixelCacheNexusIndexes(cache_view->image->cache,
+    cache_view->nexus_info[id]));
 }
 \f
 /*
@@ -525,16 +546,12 @@ MagickExport PixelPacket *GetCacheViewAuthenticPixelQueue(CacheView *cache_view)
   const int
     id = GetOpenMPThreadId();
 
-  PixelPacket
-    *pixels;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(cache_view->image->cache != (Cache) NULL);
   assert(id < (int) cache_view->number_threads);
-  pixels=GetPixelCacheNexusPixels(cache_view->image->cache,
-    cache_view->nexus_info[id]);
-  return(pixels);
+  return(GetPixelCacheNexusPixels(cache_view->image->cache,
+    cache_view->nexus_info[id]));
 }
 \f
 /*
@@ -565,9 +582,6 @@ MagickExport PixelPacket *GetCacheViewAuthenticPixelQueue(CacheView *cache_view)
 MagickExport const IndexPacket *GetCacheViewVirtualIndexQueue(
   const CacheView *cache_view)
 {
-  const IndexPacket
-    *indexes;
-
   const int
     id = GetOpenMPThreadId();
 
@@ -575,9 +589,8 @@ MagickExport const IndexPacket *GetCacheViewVirtualIndexQueue(
   assert(cache_view->signature == MagickSignature);
   assert(cache_view->image->cache != (Cache) NULL);
   assert(id < (int) cache_view->number_threads);
-  indexes=GetVirtualIndexesFromNexus(cache_view->image->cache,
-    cache_view->nexus_info[id]);
-  return(indexes);
+  return(GetVirtualIndexesFromNexus(cache_view->image->cache,
+    cache_view->nexus_info[id]));
 }
 \f
 /*
@@ -611,16 +624,12 @@ MagickExport const PixelPacket *GetCacheViewVirtualPixelQueue(
   const int
     id = GetOpenMPThreadId();
 
-  const PixelPacket
-    *pixels;
-
   assert(cache_view != (const CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(cache_view->image->cache != (Cache) NULL);
   assert(id < (int) cache_view->number_threads);
-  pixels=GetVirtualPixelsNexus(cache_view->image->cache,
-    cache_view->nexus_info[id]);
-  return(pixels);
+  return(GetVirtualPixelsNexus(cache_view->image->cache,
+    cache_view->nexus_info[id]));
 }
 \f
 /*
@@ -662,16 +671,12 @@ MagickExport const PixelPacket *GetCacheViewVirtualPixels(
   const int
     id = GetOpenMPThreadId();
 
-  const PixelPacket
-    *pixels;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(id < (int) cache_view->number_threads);
-  pixels=GetVirtualPixelsFromNexus(cache_view->image,
+  return(GetVirtualPixelsFromNexus(cache_view->image,
     cache_view->virtual_pixel_method,x,y,columns,rows,
-    cache_view->nexus_info[id],exception);
-  return(pixels);
+    cache_view->nexus_info[id],exception));
 }
 \f
 /*
@@ -826,15 +831,11 @@ MagickExport PixelPacket *QueueCacheViewAuthenticPixels(CacheView *cache_view,
   const int
     id = GetOpenMPThreadId();
 
-  PixelPacket
-    *pixels;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(id < (int) cache_view->number_threads);
-  pixels=QueueAuthenticNexus(cache_view->image,x,y,columns,rows,
-    cache_view->nexus_info[id],exception);
-  return(pixels);
+  return(QueueAuthenticNexus(cache_view->image,x,y,columns,rows,
+    cache_view->nexus_info[id],exception));
 }
 \f
 /*
@@ -945,13 +946,9 @@ MagickExport MagickBooleanType SyncCacheViewAuthenticPixels(
   const int
     id = GetOpenMPThreadId();
 
-  MagickBooleanType
-    status;
-
   assert(cache_view != (CacheView *) NULL);
   assert(cache_view->signature == MagickSignature);
   assert(id < (int) cache_view->number_threads);
-  status=SyncAuthenticPixelCacheNexus(cache_view->image,
-    cache_view->nexus_info[id],exception);
-  return(status);
+  return(SyncAuthenticPixelCacheNexus(cache_view->image,
+    cache_view->nexus_info[id],exception));
 }