MagickCore  6.9.10
Convert, Edit, Or Compose Bitmap Images
blob.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 methods.
17 */
18 #ifndef MAGICKCORE_BLOB_H
19 #define MAGICKCORE_BLOB_H
20 
21 #include "magick/image.h"
22 #include "magick/stream.h"
23 
24 #if defined(__cplusplus) || defined(c_plusplus)
25 extern "C" {
26 #endif
27 
28 #define MagickMaxBufferExtent 81920
29 #define MagickMinBufferExtent 16384
30 
31 typedef enum
32 {
37 } MapMode;
38 
39 extern MagickExport FILE
40  *GetBlobFileHandle(const Image *) magick_attribute((__pure__));
41 
42 extern MagickExport Image
43  *BlobToImage(const ImageInfo *,const void *,const size_t,ExceptionInfo *),
44  *PingBlob(const ImageInfo *,const void *,const size_t,ExceptionInfo *);
45 
47  BlobToFile(char *,const void *,const size_t,ExceptionInfo *),
48  FileToImage(Image *,const char *),
49  GetBlobError(const Image *) magick_attribute((__pure__)),
50  ImageToFile(Image *,char *,ExceptionInfo *),
51  InjectImageBlob(const ImageInfo *,Image *,Image *,const char *,
52  ExceptionInfo *),
53  IsBlobExempt(const Image *) magick_attribute((__pure__)),
54  IsBlobSeekable(const Image *) magick_attribute((__pure__)),
55  IsBlobTemporary(const Image *) magick_attribute((__pure__));
56 
58  GetBlobSize(const Image *);
59 
61  GetBlobStreamHandler(const Image *) magick_attribute((__pure__));
62 
63 extern MagickExport unsigned char
64  *FileToBlob(const char *,const size_t,size_t *,ExceptionInfo *),
65  *GetBlobStreamData(const Image *) magick_attribute((__pure__)),
66  *ImageToBlob(const ImageInfo *,Image *,size_t *,ExceptionInfo *),
67  *ImagesToBlob(const ImageInfo *,Image *,size_t *,ExceptionInfo *);
68 
69 extern MagickExport void
70  DestroyBlob(Image *),
71  DuplicateBlob(Image *,const Image *),
72  SetBlobExempt(Image *,const MagickBooleanType);
73 
74 #if defined(__cplusplus) || defined(c_plusplus)
75 }
76 #endif
77 
78 #endif
Definition: blob.h:33
MagickExport MagickBooleanType GetBlobError(const Image *image)
Definition: blob.c:1375
size_t(* StreamHandler)(const Image *, const void *, const size_t)
Definition: stream.h:26
Definition: exception.h:102
Definition: image.h:361
Definition: blob.h:35
MagickExport Image * PingBlob(const ImageInfo *image_info, const void *blob, const size_t length, ExceptionInfo *exception)
Definition: blob.c:2938
MagickExport MagickBooleanType ImageToFile(Image *image, char *filename, ExceptionInfo *exception)
Definition: blob.c:1797
Definition: image.h:152
MagickExport unsigned char * ImagesToBlob(const ImageInfo *image_info, Image *images, size_t *length, ExceptionInfo *exception)
Definition: blob.c:1919
MagickExport unsigned char * GetBlobStreamData(const Image *image)
Definition: blob.c:1590
MagickExport Image * BlobToImage(const ImageInfo *image_info, const void *blob, const size_t length, ExceptionInfo *exception)
Definition: blob.c:326
MagickBooleanType
Definition: magick-type.h:198
MagickExport FILE * GetBlobFileHandle(const Image *image)
Definition: blob.c:1406
MagickExport MagickBooleanType InjectImageBlob(const ImageInfo *image_info, Image *image, Image *inject_image, const char *format, ExceptionInfo *exception)
Definition: blob.c:2064
size_t MagickSizeType
Definition: magick-type.h:136
MagickExport MagickBooleanType IsBlobTemporary(const Image *image)
Definition: blob.c:2313
MagickExport void SetBlobExempt(Image *image, const MagickBooleanType exempt)
Definition: blob.c:4362
MagickExport MagickBooleanType FileToImage(Image *image, const char *filename)
Definition: blob.c:1273
MagickExport unsigned char * FileToBlob(const char *filename, const size_t extent, size_t *length, ExceptionInfo *exception)
Definition: blob.c:1052
MagickExport MagickBooleanType IsBlobSeekable(const Image *image)
Definition: blob.c:2241
MagickExport unsigned char * ImageToBlob(const ImageInfo *image_info, Image *image, size_t *length, ExceptionInfo *exception)
Definition: blob.c:1661
MagickExport MagickSizeType GetBlobSize(const Image *image)
Definition: blob.c:1503
Definition: blob.h:34
MagickExport MagickBooleanType IsBlobExempt(const Image *image)
Definition: blob.c:2210
MapMode
Definition: blob.h:31
#define magick_attribute(x)
Definition: deprecate.h:41
#define MagickExport
Definition: method-attribute.h:80
MagickExport StreamHandler GetBlobStreamHandler(const Image *image)
Definition: blob.c:1619
MagickExport void DestroyBlob(Image *image)
Definition: blob.c:631
MagickExport void DuplicateBlob(Image *image, const Image *duplicate)
Definition: blob.c:856
MagickExport MagickBooleanType BlobToFile(char *filename, const void *blob, const size_t length, ExceptionInfo *exception)
Definition: blob.c:251
Definition: blob.h:36