cache-view.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  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 view methods.
  13. */
  14. #ifndef MAGICKCORE_CACHE_VIEW_H
  15. #define MAGICKCORE_CACHE_VIEW_H
  16. #include "magick/pixel.h"
  17. #if defined(__cplusplus) || defined(c_plusplus)
  18. extern "C" {
  19. #endif
  20. typedef enum
  21. {
  22. UndefinedVirtualPixelMethod,
  23. BackgroundVirtualPixelMethod,
  24. ConstantVirtualPixelMethod, /* deprecated */
  25. DitherVirtualPixelMethod,
  26. EdgeVirtualPixelMethod,
  27. MirrorVirtualPixelMethod,
  28. RandomVirtualPixelMethod,
  29. TileVirtualPixelMethod,
  30. TransparentVirtualPixelMethod,
  31. MaskVirtualPixelMethod,
  32. BlackVirtualPixelMethod,
  33. GrayVirtualPixelMethod,
  34. WhiteVirtualPixelMethod,
  35. HorizontalTileVirtualPixelMethod,
  36. VerticalTileVirtualPixelMethod,
  37. HorizontalTileEdgeVirtualPixelMethod,
  38. VerticalTileEdgeVirtualPixelMethod,
  39. CheckerTileVirtualPixelMethod
  40. } VirtualPixelMethod;
  41. typedef struct _CacheView
  42. CacheView;
  43. extern MagickExport CacheView
  44. *AcquireAuthenticCacheView(const Image *,ExceptionInfo *),
  45. *AcquireCacheView(const Image *),
  46. *AcquireVirtualCacheView(const Image *,ExceptionInfo *),
  47. *CloneCacheView(const CacheView *),
  48. *DestroyCacheView(CacheView *);
  49. extern MagickExport ClassType
  50. GetCacheViewStorageClass(const CacheView *) magick_attribute((__pure__));
  51. extern MagickExport ColorspaceType
  52. GetCacheViewColorspace(const CacheView *) magick_attribute((__pure__));
  53. extern MagickExport const IndexPacket
  54. *GetCacheViewVirtualIndexQueue(const CacheView *)
  55. magick_attribute((__pure__));
  56. extern MagickExport const PixelPacket
  57. *GetCacheViewVirtualPixels(const CacheView *,const ssize_t,const ssize_t,
  58. const size_t,const size_t,ExceptionInfo *) magick_hot_spot,
  59. *GetCacheViewVirtualPixelQueue(const CacheView *) magick_hot_spot;
  60. extern MagickExport ExceptionInfo
  61. *GetCacheViewException(const CacheView *) magick_attribute((__pure__));
  62. extern MagickExport IndexPacket
  63. *GetCacheViewAuthenticIndexQueue(CacheView *) magick_attribute((__pure__));
  64. extern MagickExport MagickBooleanType
  65. GetOneCacheViewAuthenticPixel(const CacheView *magick_restrict,const ssize_t,
  66. const ssize_t,PixelPacket *magick_restrict,ExceptionInfo *),
  67. GetOneCacheViewVirtualMethodPixel(const CacheView *,
  68. const VirtualPixelMethod,const ssize_t,const ssize_t,PixelPacket *,
  69. ExceptionInfo *),
  70. GetOneCacheViewVirtualPixel(const CacheView *magick_restrict,const ssize_t,
  71. const ssize_t,PixelPacket *magick_restrict,ExceptionInfo *),
  72. SetCacheViewStorageClass(CacheView *,const ClassType),
  73. SetCacheViewVirtualPixelMethod(CacheView *magick_restrict,
  74. const VirtualPixelMethod),
  75. SyncCacheViewAuthenticPixels(CacheView *magick_restrict,ExceptionInfo *)
  76. magick_hot_spot;
  77. extern MagickExport MagickSizeType
  78. GetCacheViewExtent(const CacheView *);
  79. extern MagickExport size_t
  80. GetCacheViewChannels(const CacheView *);
  81. extern MagickExport PixelPacket
  82. *GetCacheViewAuthenticPixelQueue(CacheView *) magick_hot_spot,
  83. *GetCacheViewAuthenticPixels(CacheView *,const ssize_t,const ssize_t,
  84. const size_t,const size_t,ExceptionInfo *) magick_hot_spot,
  85. *QueueCacheViewAuthenticPixels(CacheView *,const ssize_t,const ssize_t,
  86. const size_t,const size_t,ExceptionInfo *) magick_hot_spot;
  87. #if defined(__cplusplus) || defined(c_plusplus)
  88. }
  89. #endif
  90. #endif