1 /* 2 Copyright 1999-2019 ImageMagick Studio LLC, a non-profit organization 3 dedicated to making software imaging solutions freely available. 4 5 You may not use this file except in compliance with the License. You may 6 obtain a copy of the License at 7 8 https://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 CONDITTransferNS 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 image view methods. 17 */ 18 #ifndef MAGICKCORE_IMAGE_VIEW_H 19 #define MAGICKCORE_IMAGE_VIEW_H 20 21 #if defined(__cplusplus) || defined(c_plusplus) 22 extern "C" { 23 #endif 24 25 typedef struct _ImageView 26 ImageView; 27 28 typedef MagickBooleanType 29 (*DuplexTransferImageViewMethod)(const ImageView *,const ImageView *, 30 ImageView *,const ssize_t,const int,void *), 31 (*GetImageViewMethod)(const ImageView *,const ssize_t,const int,void *), 32 (*SetImageViewMethod)(ImageView *,const ssize_t,const int,void *), 33 (*TransferImageViewMethod)(const ImageView *,ImageView *,const ssize_t, 34 const int,void *), 35 (*UpdateImageViewMethod)(ImageView *,const ssize_t,const int,void *); 36 37 extern MagickExport char 38 *GetImageViewException(const ImageView *,ExceptionType *); 39 40 extern MagickExport const Quantum 41 *GetImageViewVirtualPixels(const ImageView *); 42 43 extern MagickExport const void 44 *GetImageViewVirtualMetacontent(const ImageView *); 45 46 extern MagickExport Image 47 *GetImageViewImage(const ImageView *); 48 49 extern MagickExport ImageView 50 *CloneImageView(const ImageView *), 51 *DestroyImageView(ImageView *), 52 *NewImageView(Image *,ExceptionInfo *), 53 *NewImageViewRegion(Image *,const ssize_t,const ssize_t,const size_t, 54 const size_t,ExceptionInfo *); 55 56 extern MagickExport MagickBooleanType 57 DuplexTransferImageViewIterator(ImageView *,ImageView *,ImageView *, 58 DuplexTransferImageViewMethod,void *), 59 GetImageViewIterator(ImageView *,GetImageViewMethod,void *), 60 IsImageView(const ImageView *), 61 SetImageViewIterator(ImageView *,SetImageViewMethod,void *), 62 TransferImageViewIterator(ImageView *,ImageView *,TransferImageViewMethod, 63 void *), 64 UpdateImageViewIterator(ImageView *,UpdateImageViewMethod,void *); 65 66 extern MagickExport Quantum 67 *GetImageViewAuthenticPixels(const ImageView *); 68 69 extern MagickExport RectangleInfo 70 GetImageViewExtent(const ImageView *); 71 72 extern MagickExport void 73 SetImageViewDescription(ImageView *,const char *), 74 SetImageViewThreads(ImageView *,const size_t); 75 76 extern MagickExport void 77 *GetImageViewAuthenticMetacontent(const ImageView *); 78 79 #if defined(__cplusplus) || defined(c_plusplus) 80 } 81 #endif 82 83 #endif 84