manpagez: man pages & more
html files: libgsf
Home | html | info | man

GsfBlob

GsfBlob

Synopsis

                    GsfBlob;
                    GsfBlobClass;
                    GsfStructuredBlob;
GsfBlob *           gsf_blob_new                        (gsize size,
                                                         gconstpointer data_to_copy,
                                                         GError **error);
gsize               gsf_blob_get_size                   (GsfBlob const *blob);
gconstpointer       gsf_blob_peek_data                  (GsfBlob const *blob);
gboolean            gsf_structured_blob_write           (GsfStructuredBlob *blob,
                                                         GsfOutfile *container);
GsfStructuredBlob * gsf_structured_blob_read            (GsfInput *input);

Description

Details

GsfBlob

typedef struct _GsfBlob GsfBlob;


GsfBlobClass

typedef struct _GsfBlobClass GsfBlobClass;


GsfStructuredBlob

typedef struct _GsfStructuredBlob GsfStructuredBlob;


gsf_blob_new ()

GsfBlob *           gsf_blob_new                        (gsize size,
                                                         gconstpointer data_to_copy,
                                                         GError **error);

Creates a new GsfBlob object to hold the specified data. The blob can then be used as a facility for reference-counting for the data. The data is copied internally, so the blob does not hold references to external chunks of memory.

size :

Size of the data in bytes.

data_to_copy :

Data which will be copied into the blob, or NULL if size is zero. [in][array length=size][element-type guint8]

error :

location to store error, or NULL.

Returns :

A newly-created GsfBlob, or NULL if the data could not be copied. Error domain: GSF_ERROR Possible errors: GSF_ERROR_OUT_OF_MEMORY if the data_to_copy could not be copied.

gsf_blob_get_size ()

gsize               gsf_blob_get_size                   (GsfBlob const *blob);

Queries the size in bytes of the data stored in the blob.

blob :

A GsfBlob.

Returns :

Size in bytes, or 0 if the data is NULL.

gsf_blob_peek_data ()

gconstpointer       gsf_blob_peek_data                  (GsfBlob const *blob);

Queries a pointer to the data stored in the blob. This does not copy the data for you; it returns a pointer to the actual buffer which the blob uses internally, so you should not free this buffer on your own.

blob :

A GsfBlob.

Returns :

Pointer to the data stored in the blob, or NULL if the size of the data is zero. [transfer none]

gsf_structured_blob_write ()

gboolean            gsf_structured_blob_write           (GsfStructuredBlob *blob,
                                                         GsfOutfile *container);

Dumps structured blob blob onto the container. Will fail if the output is not an Outfile and blob has multiple streams.

blob :

GsfStructuredBlob

container :

GsfOutfile

Returns :

TRUE on success.

gsf_structured_blob_read ()

GsfStructuredBlob * gsf_structured_blob_read            (GsfInput *input);

Create a tree of binary blobs with unknown content from a GsfInput or GsfInfile and store it in a newly created GsfStructuredBlob.

input :

An input (potentially a GsfInfile) holding the blob

Returns :

a new GsfStructuredBlob object which the caller is responsible for. [transfer full]
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.