MagickCore  6.8.9
blob-private.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2014 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.
6  obtain a copy of the License at
7 
8  http://www.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 CONDITIONS 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 Binary Large OBjects private methods.
17 */
18 #ifndef _MAGICKCORE_BLOB_PRIVATE_H
19 #define _MAGICKCORE_BLOB_PRIVATE_H
20 
21 #include "magick/image.h"
22 #include "magick/stream.h"
23 #include "magick/nt-base-private.h"
24 
25 #if defined(__cplusplus) || defined(c_plusplus)
26 extern "C" {
27 #endif
28 
29 #define MagickMinBlobExtent 32767L
30 #if defined(MAGICKCORE_HAVE_FSEEKO)
31 # define fseek fseeko
32 # define ftell ftello
33 #endif
34 
35 typedef enum
36 {
44 } BlobMode;
45 
46 typedef enum
47 {
56 } StreamType;
57 
58 typedef int
59  *(*BlobFifo)(const Image *,const void *,const size_t);
60 
62  *CloneBlobInfo(const BlobInfo *),
64 
65 extern MagickExport char
66  *ReadBlobString(Image *,char *);
67 
68 extern MagickExport const struct stat
69  *GetBlobProperties(const Image *);
70 
71 extern MagickExport double
72  ReadBlobDouble(Image *);
73 
74 extern MagickExport float
75  ReadBlobFloat(Image *);
76 
77 extern MagickExport int
78  EOFBlob(const Image *),
79  ReadBlobByte(Image *);
80 
82  CloseBlob(Image *),
83  DiscardBlobBytes(Image *,const MagickSizeType),
84  OpenBlob(const ImageInfo *,Image *,const BlobMode,ExceptionInfo *),
85  SetBlobExtent(Image *,const MagickSizeType),
86  UnmapBlob(void *,const size_t);
87 
89  SeekBlob(Image *,const MagickOffsetType,const int),
90  TellBlob(const Image *);
91 
93  ReadBlobLongLong(Image *),
94  ReadBlobMSBLongLong(Image *);
95 
96 extern MagickExport ssize_t
97  ReadBlob(Image *,const size_t,unsigned char *),
98  WriteBlob(Image *,const size_t,const unsigned char *),
99  WriteBlobByte(Image *,const unsigned char),
100  WriteBlobFloat(Image *,const float),
101  WriteBlobLong(Image *,const unsigned int),
102  WriteBlobShort(Image *,const unsigned short),
103  WriteBlobLSBLong(Image *,const unsigned int),
104  WriteBlobLSBShort(Image *,const unsigned short),
105  WriteBlobMSBLong(Image *,const unsigned int),
106  WriteBlobMSBLongLong(Image *,const MagickSizeType),
107  WriteBlobMSBShort(Image *,const unsigned short),
108  WriteBlobString(Image *,const char *);
109 
110 extern MagickExport unsigned char
111  *DetachBlob(BlobInfo *),
112  *MapBlob(int,const MapMode,const MagickOffsetType,const size_t);
113 
114 extern MagickExport unsigned int
115  ReadBlobLong(Image *),
116  ReadBlobLSBLong(Image *),
117  ReadBlobMSBLong(Image *);
118 
119 extern MagickExport unsigned short
120  ReadBlobShort(Image *),
121  ReadBlobLSBShort(Image *),
122  ReadBlobMSBShort(Image *);
123 
124 extern MagickExport void
125  AttachBlob(BlobInfo *,const void *,const size_t),
127  MSBOrderLong(unsigned char *,const size_t),
128  MSBOrderShort(unsigned char *,const size_t);
129 
130 extern MagickPrivate void
131  DisassociateBlob(Image *);
132 
133 #if defined(__cplusplus) || defined(c_plusplus)
134 }
135 #endif
136 
137 #endif
MagickExport MagickBooleanType SetBlobExtent(Image *, const MagickSizeType)
Definition: blob-private.h:40
MagickExport ssize_t WriteBlobString(Image *, const char *)
Definition: blob.c:4647
MagickExport int ReadBlobByte(Image *)
Definition: blob.c:2997
Definition: blob-private.h:38
MagickExport float ReadBlobFloat(Image *)
Definition: blob.c:3078
Definition: blob-private.h:53
Definition: exception.h:102
MagickExport int EOFBlob(const Image *)
Definition: blob-private.h:43
Definition: image.h:358
Definition: blob-private.h:54
MagickExport ssize_t WriteBlobLSBLong(Image *, const unsigned int)
Definition: blob.c:108
BlobMode
Definition: blob-private.h:35
MagickExport ssize_t ReadBlob(Image *, const size_t, unsigned char *)
MagickExport BlobInfo * CloneBlobInfo(const BlobInfo *)
MagickExport ssize_t WriteBlobMSBLongLong(Image *, const MagickSizeType)
ssize_t MagickOffsetType
Definition: magick-type.h:155
MagickExport unsigned int ReadBlobLong(Image *)
MagickExport void GetBlobInfo(BlobInfo *)
MagickExport ssize_t WriteBlobLSBShort(Image *, const unsigned short)
MagickExport void MSBOrderShort(unsigned char *, const size_t)
Definition: blob.c:2352
Definition: image.h:152
Definition: blob-private.h:50
MagickExport unsigned char * MapBlob(int, const MapMode, const MagickOffsetType, const size_t)
Definition: blob.c:2212
MagickExport const struct stat * GetBlobProperties(const Image *)
Definition: blob.c:1370
Definition: blob-private.h:37
MagickExport unsigned int ReadBlobLSBLong(Image *)
MagickBooleanType
Definition: magick-type.h:211
MagickExport ssize_t WriteBlobByte(Image *, const unsigned char)
MagickExport ssize_t WriteBlobMSBShort(Image *, const unsigned short)
MagickExport void AttachBlob(BlobInfo *, const void *, const size_t)
MagickExport MagickBooleanType CloseBlob(Image *)
size_t MagickSizeType
Definition: magick-type.h:156
MagickExport ssize_t WriteBlobLong(Image *, const unsigned int)
MagickExport ssize_t WriteBlobShort(Image *, const unsigned short)
MagickExport char * ReadBlobString(Image *, char *)
Definition: blob.c:3547
MagickExport MagickOffsetType SeekBlob(Image *, const MagickOffsetType, const int)
MagickExport MagickBooleanType OpenBlob(const ImageInfo *, Image *, const BlobMode, ExceptionInfo *)
Definition: blob-private.h:51
MagickExport unsigned short ReadBlobShort(Image *)
MagickExport unsigned char * DetachBlob(BlobInfo *)
MagickExport unsigned int ReadBlobMSBLong(Image *)
Definition: blob.c:3393
Definition: blob-private.h:52
Definition: blob-private.h:42
MagickExport void MSBOrderLong(unsigned char *, const size_t)
Definition: blob-private.h:55
Definition: blob-private.h:48
MagickPrivate void DisassociateBlob(Image *)
Definition: blob.c:735
MapMode
Definition: blob.h:30
MagickExport MagickOffsetType TellBlob(const Image *)
Definition: blob.c:4014
Definition: blob-private.h:41
Definition: blob-private.h:39
MagickExport ssize_t WriteBlobMSBLong(Image *, const unsigned int)
MagickExport MagickBooleanType UnmapBlob(void *, const size_t)
Definition: blob.c:4083
MagickExport ssize_t WriteBlobFloat(Image *, const float)
MagickExport BlobInfo * ReferenceBlob(BlobInfo *)
Definition: blob.c:3605
MagickExport MagickSizeType ReadBlobLongLong(Image *)
#define MagickPrivate
Definition: method-attribute.h:99
#define MagickExport
Definition: method-attribute.h:98
MagickExport unsigned short ReadBlobMSBShort(Image *)
Definition: blob.c:3497
Definition: blob-private.h:49
StreamType
Definition: blob-private.h:46
MagickExport MagickBooleanType DiscardBlobBytes(Image *, const MagickSizeType)
MagickExport double ReadBlobDouble(Image *)
Definition: blob.c:3039
MagickExport unsigned short ReadBlobLSBShort(Image *)
MagickExport MagickSizeType ReadBlobMSBLongLong(Image *)
Definition: blob.c:3443
MagickExport ssize_t WriteBlob(Image *, const size_t, const unsigned char *)