00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _MAGICKCORE_BLOB_PRIVATE_H
00019 #define _MAGICKCORE_BLOB_PRIVATE_H
00020
00021 #if defined(__cplusplus) || defined(c_plusplus)
00022 extern "C" {
00023 #endif
00024
00025 #include "magick/image.h"
00026 #include "magick/stream.h"
00027
00028 typedef enum
00029 {
00030 UndefinedBlobMode,
00031 ReadBlobMode,
00032 ReadBinaryBlobMode,
00033 WriteBlobMode,
00034 WriteBinaryBlobMode
00035 } BlobMode;
00036
00037 typedef int
00038 *(*BlobFifo)(const Image *,const void *,const size_t);
00039
00040 extern MagickExport BlobInfo
00041 *CloneBlobInfo(const BlobInfo *),
00042 *ReferenceBlob(BlobInfo *);
00043
00044 extern MagickExport char
00045 *ReadBlobString(Image *,char *);
00046
00047 extern MagickExport double
00048 ReadBlobDouble(Image *);
00049
00050 extern MagickExport float
00051 ReadBlobFloat(Image *);
00052
00053 extern MagickExport int
00054 EOFBlob(const Image *),
00055 ReadBlobByte(Image *);
00056
00057 extern MagickExport MagickBooleanType
00058 CloseBlob(Image *),
00059 OpenBlob(const ImageInfo *,Image *,const BlobMode,ExceptionInfo *),
00060 UnmapBlob(void *,const size_t);
00061
00062 extern MagickExport MagickOffsetType
00063 SeekBlob(Image *,const MagickOffsetType,const int),
00064 TellBlob(const Image *);
00065
00066 extern MagickExport MagickSizeType
00067 ReadBlobLongLong(Image *);
00068
00069 extern MagickExport ssize_t
00070 ReadBlob(Image *,const size_t,unsigned char *),
00071 WriteBlob(Image *,const size_t,const unsigned char *),
00072 WriteBlobByte(Image *,const unsigned char),
00073 WriteBlobFloat(Image *,const float),
00074 WriteBlobLong(Image *,const unsigned long),
00075 WriteBlobShort(Image *,const unsigned short),
00076 WriteBlobLSBLong(Image *,const unsigned long),
00077 WriteBlobLSBShort(Image *,const unsigned short),
00078 WriteBlobMSBLong(Image *,const unsigned long),
00079 WriteBlobMSBShort(Image *,const unsigned short),
00080 WriteBlobString(Image *,const char *);
00081
00082 extern MagickExport unsigned char
00083 *DetachBlob(BlobInfo *),
00084 *MapBlob(int,const MapMode,const MagickOffsetType,const size_t);
00085
00086 extern MagickExport unsigned long
00087 ReadBlobLong(Image *),
00088 ReadBlobLSBLong(Image *),
00089 ReadBlobMSBLong(Image *);
00090
00091 extern MagickExport unsigned short
00092 ReadBlobShort(Image *),
00093 ReadBlobLSBShort(Image *),
00094 ReadBlobMSBShort(Image *);
00095
00096 extern MagickExport void
00097 AttachBlob(BlobInfo *,const void *,const size_t),
00098 GetBlobInfo(BlobInfo *),
00099 MSBOrderLong(unsigned char *,const size_t),
00100 MSBOrderShort(unsigned char *,const size_t);
00101
00102 #if defined(__cplusplus) || defined(c_plusplus)
00103 }
00104 #endif
00105
00106 #endif