00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MAGICKCORE_BLOB_H
00019 #define MAGICKCORE_BLOB_H
00020
00021 #include "magick/image.h"
00022 #include "magick/stream.h"
00023
00024 #if defined(__cplusplus) || defined(c_plusplus)
00025 extern "C" {
00026 #endif
00027
00028 #define MagickMaxBufferExtent 81920
00029 #define MagickMinBufferExtent 16384
00030
00031 typedef enum
00032 {
00033 ReadMode,
00034 WriteMode,
00035 IOMode,
00036 PersistMode
00037 } MapMode;
00038
00039 extern MagickExport FILE
00040 *GetBlobFileHandle(const Image *) magick_attribute((__pure__));
00041
00042 extern MagickExport Image
00043 *BlobToImage(const ImageInfo *,const void *,const size_t,ExceptionInfo *),
00044 *PingBlob(const ImageInfo *,const void *,const size_t,ExceptionInfo *);
00045
00046 extern MagickExport MagickBooleanType
00047 BlobToFile(char *,const void *,const size_t,ExceptionInfo *),
00048 FileToImage(Image *,const char *),
00049 GetBlobError(const Image *) magick_attribute((__pure__)),
00050 ImageToFile(Image *,char *,ExceptionInfo *),
00051 InjectImageBlob(const ImageInfo *,Image *,Image *,const char *,
00052 ExceptionInfo *),
00053 IsBlobExempt(const Image *) magick_attribute((__pure__)),
00054 IsBlobSeekable(const Image *) magick_attribute((__pure__)),
00055 IsBlobTemporary(const Image *) magick_attribute((__pure__));
00056
00057 extern MagickExport MagickSizeType
00058 GetBlobSize(const Image *);
00059
00060 extern MagickExport StreamHandler
00061 GetBlobStreamHandler(const Image *) magick_attribute((__pure__));
00062
00063 extern MagickExport unsigned char
00064 *FileToBlob(const char *,const size_t,size_t *,ExceptionInfo *),
00065 *GetBlobStreamData(const Image *) magick_attribute((__pure__)),
00066 *ImageToBlob(const ImageInfo *,Image *,size_t *,ExceptionInfo *),
00067 *ImagesToBlob(const ImageInfo *,Image *,size_t *,ExceptionInfo *);
00068
00069 extern MagickExport void
00070 DestroyBlob(Image *),
00071 DuplicateBlob(Image *,const Image *),
00072 SetBlobExempt(Image *,const MagickBooleanType);
00073
00074 #if defined(__cplusplus) || defined(c_plusplus)
00075 }
00076 #endif
00077
00078 #endif