AttachBlob() attaches a blob to the BlobInfo structure.
The format of the AttachBlob method is:
void AttachBlob( BlobInfo *blob_info, const void *blob, const size_t length );
A description of each parameter follows:
BlobIsSeekable() returns MagickTrue if the blob supports seeks (SeekBlob() is functional).
The format of the BlobIsSeekable method is:
MagickBool BlobIsSeekable( const Image *image );
A description of each parameter follows:
BlobReserveSize() sets the output size of the blob or file. This is used as a means to minimize memory or filesystem fragmentation if the final output size is known in advance. While it is possible that file fragmentation is reduced, it is also possible that file write performance is reduced by changing a write operation to a read, modify, write operation.
The format of the BlobReserveSize method is:
MagickPassFail BlobReserveSize( Image *image, magick_off_t size );
A description of each parameter follows:
MagickPassFail BlobToFile( const char *filename, const void *blob, const size_t length, ExceptionInfo *exception );
BlobToFile() writes a blob to a file. It returns MagickFail if an error occurs otherwise MagickPass.
The format of the BlobToFile method is:
MagickPassFail BlobToFile( const char *filename, const void *blob, const size_t length, ExceptionInfo *exception );
Image *BlobToImage( const ImageInfo *image_info, const void *blob, const size_t length, ExceptionInfo *exception );
BlobToImage() implements direct to memory image formats. It returns the blob as an image.
The format of the BlobToImage method is:
Image *BlobToImage( const ImageInfo *image_info, const void *blob, const size_t length, ExceptionInfo *exception );
CloneBlobInfo() makes a duplicate of the given blob info structure, or if blob info is NULL, a new one.
The format of the CloneBlobInfo method is:
BlobInfo *CloneBlobInfo( const BlobInfo *blob_info );
A description of each parameter follows:
DestroyBlob() deallocates memory associated with a blob. The blob is a reference counted object so the object is only destroyed once its reference count decreases to zero.
The format of the DestroyBlob method is:
void DestroyBlob( Image *image );
A description of each parameter follows:
DestroyBlobInfo() deallocates memory associated with an BlobInfo structure. The blob is a reference counted object so the object is only destroyed once its reference count decreases to zero. Use of DestroyBlob is preferred over this function since it assures that the blob is closed prior to destruction.
This function is no longer used within GraphicsMagick.
The format of the DestroyBlobInfo method is:
void DestroyBlobInfo( BlobInfo *blob );
A description of each parameter follows:
DetachBlob() detaches a blob from the BlobInfo structure.
The format of the DetachBlob method is:
void DetachBlob( BlobInfo *blob_info );
A description of each parameter follows:
void *FileToBlob( const char *filename, size_t *length, ExceptionInfo *exception );
FileToBlob() returns the contents of a file as a blob. It returns the file as a blob and its length. If an error occurs, NULL is returned.
The format of the FileToBlob method is:
void *FileToBlob( const char *filename, size_t *length, ExceptionInfo *exception );
GetBlobFileHandle() returns the stdio file handle associated with the image blob. If there is no associated file handle, then a null pointer is returned.
The format of the GetBlobFileHandle method is:
FILE *GetBlobFileHandle( const Image *image );
A description of each parameter follows:
GetBlobInfo() initializes the BlobInfo structure.
The format of the GetBlobInfo method is:
void GetBlobInfo( BlobInfo *blob_info );
A description of each parameter follows:
GetBlobStatus() returns the blob error status.
The format of the GetBlobStatus method is:
int GetBlobStatus( const Image *image );
A description of each parameter follows:
GetBlobStreamData() returns the stream data for the image. The data is only available if the data is stored on the heap, or is memory mapped. Otherwise a NULL value is returned.
The format of the GetBlobStreamData method is:
unsigned char *GetBlobStreamData( const Image *image );
A description of each parameter follows:
GetBlobTemporary() returns MagickTrue if the file associated with the blob is a temporary file and should be removed when the associated image is destroyed.
The format of the GetBlobTemporary method is:
MagickBool GetBlobTemporary( const Image *image );
A description of each parameter follows:
void *GetConfigureBlob( const char *filename, ExceptionInfo *exception );
GetConfigureBlob() returns the specified configure file as a blob.
The format of the GetConfigureBlob method is:
void *GetConfigureBlob( const char *filename, ExceptionInfo *exception );
A description of each parameter follows:
void *ImageToBlob( const ImageInfo *image_info, Image *image, size_t *length, ExceptionInfo *exception );
ImageToBlob() implements direct to memory image formats. It returns the image as a blob and its length. The magick member of the Image structure determines the format of the returned blob(GIG, JPEG, PNG, etc.)
The format of the ImageToBlob method is:
void *ImageToBlob( const ImageInfo *image_info, Image *image, size_t *length, ExceptionInfo *exception );
MagickPassFail ImageToFile( Image *image, const char *filename, ExceptionInfo *exception );
ImageToFile() copies the input image from an open blob stream to a file. It returns False if an error occurs otherwise True. This function is used to handle coders which are unable to stream the data in using Blob I/O. Instead of streaming the data in, the data is streammed to a temporary file, and the coder accesses the temorary file directly.
The format of the ImageToFile method is:
MagickPassFail ImageToFile( Image *image, const char *filename, ExceptionInfo *exception );
Image *PingBlob( const ImageInfo *image_info, const void *blob, const size_t length, ExceptionInfo *exception );
PingBlob() returns all the attributes of an image or image sequence except for the pixels. It is much faster and consumes far less memory than BlobToImage(). On failure, a NULL image is returned and exception describes the reason for the failure.
The format of the PingBlob method is:
Image *PingBlob( const ImageInfo *image_info, const void *blob, const size_t length, ExceptionInfo *exception );
ReferenceBlob() increments the reference count associated with the pixel blob, returning a pointer to the blob.
The format of the ReferenceBlob method is:
BlobInfo ReferenceBlob( BlobInfo *blob_info );
A description of each parameter follows:
SetBlobClosable() enables closing the blob if MagickTrue is passed, and exempts the blob from being closed if False is passed. Blobs are closable by default (default MagickTrue).
The format of the SetBlobClosable method is:
void SetBlobClosable( Image *image, MagickBool closeable );
A description of each parameter follows:
SetBlobTemporary() sets a boolean flag (default False) to specify if the file associated with the blob is a temporary file and should be removed when the associated image is destroyed.
The format of the SetBlobTemporary method is:
void SetBlobTemporary( Image *image, MagickBool isTemporary );
A description of each parameter follows: