cache.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. /*
  2. Copyright 1999 ImageMagick Studio LLC, a non-profit organization
  3. dedicated to making software imaging solutions freely available.
  4. You may not use this file except in compliance with the License. You may
  5. obtain a copy of the License at
  6. https://imagemagick.org/script/license.php
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. MagickCore cache methods.
  13. */
  14. #ifndef MAGICKCORE_CACHE_H
  15. #define MAGICKCORE_CACHE_H
  16. #include "magick/blob.h"
  17. #if defined(__cplusplus) || defined(c_plusplus)
  18. extern "C" {
  19. #endif
  20. typedef enum
  21. {
  22. UndefinedCache,
  23. MemoryCache,
  24. MapCache,
  25. DiskCache,
  26. PingCache,
  27. DistributedCache
  28. } CacheType;
  29. extern MagickExport CacheType
  30. GetImagePixelCacheType(const Image *);
  31. extern MagickExport const char
  32. *GetPixelCacheFilename(const Image *);
  33. extern MagickExport const IndexPacket
  34. *GetVirtualIndexQueue(const Image *);
  35. extern MagickExport const PixelPacket
  36. *GetVirtualPixels(const Image *,const ssize_t,const ssize_t,const size_t,
  37. const size_t,ExceptionInfo *),
  38. *GetVirtualPixelQueue(const Image *);
  39. extern MagickExport const void
  40. *AcquirePixelCachePixels(const Image *,MagickSizeType *,ExceptionInfo *);
  41. extern MagickExport IndexPacket
  42. *GetAuthenticIndexQueue(const Image *);
  43. extern MagickExport MagickBooleanType
  44. CacheComponentGenesis(void),
  45. GetOneVirtualMagickPixel(const Image *,const ssize_t,const ssize_t,
  46. MagickPixelPacket *,ExceptionInfo *),
  47. GetOneVirtualPixel(const Image *,const ssize_t,const ssize_t,PixelPacket *,
  48. ExceptionInfo *),
  49. GetOneVirtualMethodPixel(const Image *,const VirtualPixelMethod,const ssize_t,
  50. const ssize_t,PixelPacket *,ExceptionInfo *),
  51. GetOneAuthenticPixel(Image *,const ssize_t,const ssize_t,PixelPacket *,
  52. ExceptionInfo *),
  53. PersistPixelCache(Image *,const char *,const MagickBooleanType,
  54. MagickOffsetType *,ExceptionInfo *),
  55. SyncAuthenticPixels(Image *,ExceptionInfo *);
  56. extern MagickExport MagickSizeType
  57. GetImageExtent(const Image *);
  58. extern MagickExport PixelPacket
  59. *GetAuthenticPixels(Image *,const ssize_t,const ssize_t,const size_t,
  60. const size_t,ExceptionInfo *),
  61. *GetAuthenticPixelQueue(const Image *),
  62. *QueueAuthenticPixels(Image *,const ssize_t,const ssize_t,const size_t,
  63. const size_t,ExceptionInfo *);
  64. extern MagickExport VirtualPixelMethod
  65. GetPixelCacheVirtualMethod(const Image *),
  66. SetPixelCacheVirtualMethod(const Image *,const VirtualPixelMethod);
  67. extern MagickExport void
  68. CacheComponentTerminus(void),
  69. *GetPixelCachePixels(Image *,MagickSizeType *,ExceptionInfo *);
  70. #if defined(__cplusplus) || defined(c_plusplus)
  71. }
  72. #endif
  73. #endif