MagickCore  7.0.10
blob-private.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2020 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 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 "MagickCore/image.h"
22 #include "MagickCore/stream.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 {
57 } StreamType;
58 
60  *CloneBlobInfo(const BlobInfo *),
62 
63 extern MagickExport char
64  *ReadBlobString(Image *,char *);
65 
66 extern MagickExport const struct stat
67  *GetBlobProperties(const Image *);
68 
69 extern MagickExport const void
70  *ReadBlobStream(Image *,const size_t,void *magick_restrict ,ssize_t *)
72 
73 extern MagickExport double
75 
76 extern MagickExport float
77  ReadBlobFloat(Image *);
78 
79 extern MagickExport int
80  EOFBlob(const Image *),
81  ErrorBlob(const Image *),
82  ReadBlobByte(Image *);
83 
85  CloseBlob(Image *),
86  DiscardBlobBytes(Image *,const MagickSizeType),
87  OpenBlob(const ImageInfo *,Image *,const BlobMode,ExceptionInfo *),
88  SetBlobExtent(Image *,const MagickSizeType),
89  UnmapBlob(void *,const size_t);
90 
92  SeekBlob(Image *,const MagickOffsetType,const int),
93  TellBlob(const Image *);
94 
95 extern MagickExport MagickSizeType
96  ReadBlobLongLong(Image *),
97  ReadBlobMSBLongLong(Image *);
98 
99 extern MagickExport signed int
100  ReadBlobLSBSignedLong(Image *),
101  ReadBlobMSBSignedLong(Image *),
102  ReadBlobSignedLong(Image *);
103 
104 extern MagickExport signed short
105  ReadBlobLSBSignedShort(Image *),
106  ReadBlobMSBSignedShort(Image *),
107  ReadBlobSignedShort(Image *);
108 
109 extern MagickExport ssize_t
110  ReadBlob(Image *,const size_t,void *),
111  WriteBlob(Image *,const size_t,const void *),
112  WriteBlobByte(Image *,const unsigned char),
113  WriteBlobFloat(Image *,const float),
114  WriteBlobLong(Image *,const unsigned int),
115  WriteBlobLongLong(Image *,const MagickSizeType),
116  WriteBlobShort(Image *,const unsigned short),
117  WriteBlobSignedLong(Image *,const signed int),
118  WriteBlobLSBLong(Image *,const unsigned int),
119  WriteBlobLSBShort(Image *,const unsigned short),
120  WriteBlobLSBSignedLong(Image *,const signed int),
121  WriteBlobLSBSignedShort(Image *,const signed short),
122  WriteBlobMSBLong(Image *,const unsigned int),
123  WriteBlobMSBShort(Image *,const unsigned short),
124  WriteBlobMSBSignedShort(Image *,const signed short),
125  WriteBlobString(Image *,const char *);
126 
127 extern MagickExport unsigned int
128  ReadBlobLong(Image *),
129  ReadBlobLSBLong(Image *),
130  ReadBlobMSBLong(Image *);
131 
132 extern MagickExport unsigned short
133  ReadBlobShort(Image *),
134  ReadBlobLSBShort(Image *),
135  ReadBlobMSBShort(Image *);
136 
137 extern MagickExport void
138  AttachBlob(BlobInfo *,const void *,const size_t),
139  AttachCustomStream(BlobInfo *,CustomStreamInfo *),
140  *DetachBlob(BlobInfo *),
141  DisassociateBlob(Image *),
142  GetBlobInfo(BlobInfo *),
143  *MapBlob(int,const MapMode,const MagickOffsetType,const size_t),
144  MSBOrderLong(unsigned char *,const size_t),
145  MSBOrderShort(unsigned char *,const size_t);
146 
147 #if defined(__cplusplus) || defined(c_plusplus)
148 }
149 #endif
150 
151 #endif
#define magick_restrict
Definition: MagickCore.h:41
MagickExport MagickBooleanType SetBlobExtent(Image *, const MagickSizeType)
MagickExport ssize_t WriteBlobString(Image *, const char *)
Definition: blob.c:6445
MagickExport int ReadBlobByte(Image *)
Definition: blob.c:3960
MagickExport float ReadBlobFloat(Image *)
Definition: blob.c:4068
MagickExport ssize_t WriteBlobMSBSignedShort(Image *, const signed short)
MagickExport int EOFBlob(const Image *)
MagickExport ssize_t WriteBlobSignedLong(Image *, const signed int)
MagickExport ssize_t WriteBlob(Image *, const size_t, const void *)
MagickExport signed short ReadBlobLSBSignedShort(Image *)
MagickExport ssize_t WriteBlobLSBLong(Image *, const unsigned int)
BlobMode
Definition: blob-private.h:35
MagickExport BlobInfo * CloneBlobInfo(const BlobInfo *)
ssize_t MagickOffsetType
Definition: magick-type.h:133
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:3144
Definition: image.h:151
MagickExport ssize_t WriteBlobLSBSignedLong(Image *, const signed int)
MagickExport void * DetachBlob(BlobInfo *)
MagickExport unsigned int ReadBlobLSBLong(Image *)
MagickExport signed int ReadBlobLSBSignedLong(Image *)
MagickExport ssize_t WriteBlobLongLong(Image *, const MagickSizeType)
MagickBooleanType
Definition: magick-type.h:169
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 struct stat * GetBlobProperties(const Image *)
Definition: blob.c:1812
MagickExport ssize_t ReadBlob(Image *, const size_t, void *)
MagickExport MagickBooleanType CloseBlob(Image *)
size_t MagickSizeType
Definition: magick-type.h:134
MagickExport ssize_t WriteBlobLong(Image *, const unsigned int)
MagickExport ssize_t WriteBlobShort(Image *, const unsigned short)
MagickExport void DisassociateBlob(Image *)
MagickExport void AttachCustomStream(BlobInfo *, CustomStreamInfo *)
MagickExport int ErrorBlob(const Image *)
MagickExport char * ReadBlobString(Image *, char *)
Definition: blob.c:4833
MagickExport MagickOffsetType SeekBlob(Image *, const MagickOffsetType, const int)
MagickExport MagickBooleanType OpenBlob(const ImageInfo *, Image *, const BlobMode, ExceptionInfo *)
MagickExport signed int ReadBlobSignedLong(Image *)
Definition: blob.c:4687
MagickExport unsigned short ReadBlobShort(Image *)
MagickExport signed int ReadBlobMSBSignedLong(Image *)
MagickExport unsigned int ReadBlobMSBLong(Image *)
Definition: blob.c:4459
MagickExport signed short ReadBlobSignedShort(Image *)
Definition: blob.c:4725
MagickExport void MSBOrderLong(unsigned char *, const size_t)
MagickExport signed short ReadBlobMSBSignedShort(Image *)
MagickExport const void * ReadBlobStream(Image *, const size_t, void *magick_restrict, ssize_t *) magick_hot_spot
MapMode
Definition: blob.h:28
MagickExport MagickOffsetType TellBlob(const Image *)
Definition: blob.c:5475
MagickExport ssize_t WriteBlobMSBLong(Image *, const unsigned int)
MagickExport MagickBooleanType UnmapBlob(void *, const size_t)
Definition: blob.c:5554
MagickExport ssize_t WriteBlobFloat(Image *, const float)
MagickExport BlobInfo * ReferenceBlob(BlobInfo *)
Definition: blob.c:4887
MagickExport MagickSizeType ReadBlobLongLong(Image *)
#define MagickExport
MagickExport unsigned short ReadBlobMSBShort(Image *)
Definition: blob.c:4563
MagickExport MagickBooleanType magick_hot_spot
Definition: cache-view.h:88
StreamType
Definition: blob-private.h:46
MagickExport MagickBooleanType DiscardBlobBytes(Image *, const MagickSizeType)
MagickExport ssize_t WriteBlobLSBSignedShort(Image *, const signed short)
MagickExport double ReadBlobDouble(Image *)
Definition: blob.c:4029
MagickExport unsigned short ReadBlobLSBShort(Image *)
MagickExport MagickSizeType ReadBlobMSBLongLong(Image *)
Definition: blob.c:4509
MagickExport void * MapBlob(int, const MapMode, const MagickOffsetType, const size_t)