blob: ad5abfb5dd520ed00500045bfd0453abbb00dd76 [file] [log] [blame]
cristy3ed852e2009-09-05 21:47:34 +00001/*
cristy7e41fe82010-12-04 23:12:08 +00002 Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization
cristy3ed852e2009-09-05 21:47:34 +00003 dedicated to making software imaging solutions freely available.
4
5 You may not use this file except in compliance with the License.
6 obtain a copy of the License at
7
8 http://www.imagemagick.org/script/license.php
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16 MagickCore cache methods.
17*/
18#ifndef _MAGICKCORE_CACHE_H
19#define _MAGICKCORE_CACHE_H
20
21#if defined(__cplusplus) || defined(c_plusplus)
22extern "C" {
23#endif
24
25#include "magick/blob.h"
26
27extern MagickExport const IndexPacket
28 *GetVirtualIndexQueue(const Image *);
29
30extern MagickExport const PixelPacket
cristybb503372010-05-27 20:51:26 +000031 *GetVirtualPixels(const Image *,const ssize_t,const ssize_t,const size_t,
32 const size_t,ExceptionInfo *),
cristy3ed852e2009-09-05 21:47:34 +000033 *GetVirtualPixelQueue(const Image *);
34
cristyd43a46b2010-01-21 02:13:41 +000035extern MagickExport const void
36 *AcquirePixelCachePixels(const Image *,MagickSizeType *,ExceptionInfo *);
37
cristy3ed852e2009-09-05 21:47:34 +000038extern MagickExport IndexPacket
39 *GetAuthenticIndexQueue(const Image *);
40
41extern MagickExport MagickBooleanType
cristyf34a1452009-10-24 22:29:27 +000042 CacheComponentGenesis(void),
cristybb503372010-05-27 20:51:26 +000043 GetOneVirtualMagickPixel(const Image *,const ssize_t,const ssize_t,
cristy3ed852e2009-09-05 21:47:34 +000044 MagickPixelPacket *,ExceptionInfo *),
cristybb503372010-05-27 20:51:26 +000045 GetOneVirtualPixel(const Image *,const ssize_t,const ssize_t,PixelPacket *,
cristy3ed852e2009-09-05 21:47:34 +000046 ExceptionInfo *),
cristybb503372010-05-27 20:51:26 +000047 GetOneVirtualMethodPixel(const Image *,const VirtualPixelMethod,const ssize_t,
48 const ssize_t,PixelPacket *,ExceptionInfo *),
49 GetOneAuthenticPixel(Image *,const ssize_t,const ssize_t,PixelPacket *,
cristy3ed852e2009-09-05 21:47:34 +000050 ExceptionInfo *),
51 PersistPixelCache(Image *,const char *,const MagickBooleanType,
52 MagickOffsetType *,ExceptionInfo *),
53 SyncAuthenticPixels(Image *,ExceptionInfo *);
54
55extern MagickExport MagickSizeType
56 GetImageExtent(const Image *);
57
58extern MagickExport PixelPacket
cristybb503372010-05-27 20:51:26 +000059 *GetAuthenticPixels(Image *,const ssize_t,const ssize_t,const size_t,
60 const size_t,ExceptionInfo *),
cristy3ed852e2009-09-05 21:47:34 +000061 *GetAuthenticPixelQueue(const Image *),
cristybb503372010-05-27 20:51:26 +000062 *QueueAuthenticPixels(Image *,const ssize_t,const ssize_t,const size_t,
63 const size_t,ExceptionInfo *);
cristy3ed852e2009-09-05 21:47:34 +000064
65extern MagickExport VirtualPixelMethod
66 GetPixelCacheVirtualMethod(const Image *),
67 SetPixelCacheVirtualMethod(const Image *,const VirtualPixelMethod);
68
69extern MagickExport void
cristy5eb7e612010-01-05 02:00:12 +000070 CacheComponentTerminus(void),
71 *GetPixelCachePixels(Image *,MagickSizeType *,ExceptionInfo *);
cristy3ed852e2009-09-05 21:47:34 +000072
73#if defined(__cplusplus) || defined(c_plusplus)
74}
75#endif
76
77#endif