| GCab Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Properties | ||||
#include <libgcab.h>
GCabCabinet;
GCabCabinet * gcab_cabinet_new (void);
gboolean gcab_cabinet_load (GCabCabinet *cabinet,
GInputStream *stream,
GCancellable *cancellable,
GError **error);
gboolean gcab_cabinet_extract (GCabCabinet *cabinet,
GFile *path,
GCabFileCallback file_callback,
GFileProgressCallback progress_callback,
gpointer user_data,
GCancellable *cancellable,
GError **error);
gboolean gcab_cabinet_extract_simple (GCabCabinet *cabinet,
GFile *path,
GCabFileCallback file_callback,
gpointer user_data,
GCancellable *cancellable,
GError **error);
GPtrArray * gcab_cabinet_get_folders (GCabCabinet *cabinet);
gboolean gcab_cabinet_add_folder (GCabCabinet *cabinet,
GCabFolder *folder,
GError **error);
gboolean gcab_cabinet_write (GCabCabinet *cabinet,
GOutputStream *stream,
GCabFileCallback file_callback,
GFileProgressCallback progress_callback,
gpointer user_data,
GCancellable *cancellable,
GError **error);
gboolean gcab_cabinet_write_simple (GCabCabinet *cabinet,
GOutputStream *stream,
GCabFileCallback file_callback,
gpointer user_data,
GCancellable *cancellable,
GError **error);
#define GCAB_ERROR
enum GCabError;
A GCabCabinet is a handle to a Cabinet archive. It allows examining, extracting and creation of archives.
typedef struct _GCabCabinet GCabCabinet;
An opaque object holding a Cabinet file reference.
GCabCabinet * gcab_cabinet_new (void);
Create a new GCabCabinet object to read or create a Cabinet archive.
Returns : |
a new GCabCabinet |
gboolean gcab_cabinet_load (GCabCabinet *cabinet,GInputStream *stream,GCancellable *cancellable,GError **error);
Load a cabinet archive.
|
a GCabCabinet |
|
a GInputStream |
|
optional GCancellable object,
NULL to ignore. [allow-none]
|
|
GError to set on error, or NULL. [allow-none]
|
Returns : |
TRUE on success |
gboolean gcab_cabinet_extract (GCabCabinet *cabinet,GFile *path,GCabFileCallback file_callback,GFileProgressCallback progress_callback,gpointer user_data,GCancellable *cancellable,GError **error);
Extract files to given path.
|
a GCabCabinet |
|
the path to extract files |
|
an optionnal GCabFile callback,
return FALSE to filter out or skip files. [allow-none][scope call][closure user_data]
|
|
a progress callback. [allow-none][scope call][closure user_data] |
|
callback data. [closure] |
|
optional GCancellable object,
NULL to ignore. [allow-none]
|
|
GError to set on error, or NULL. [allow-none]
|
Returns : |
TRUE on success. |
gboolean gcab_cabinet_extract_simple (GCabCabinet *cabinet,GFile *path,GCabFileCallback file_callback,gpointer user_data,GCancellable *cancellable,GError **error);
Extract files to given path.
|
a GCabCabinet |
|
the path to extract files |
|
an optionnal GCabFile callback,
return FALSE to filter out or skip files. [allow-none][scope call][closure user_data]
|
|
callback data. [closure] |
|
optional GCancellable object,
NULL to ignore. [allow-none]
|
|
GError to set on error, or NULL. [allow-none]
|
Returns : |
TRUE on success. |
GPtrArray * gcab_cabinet_get_folders (GCabCabinet *cabinet);
Get the Cabinet folders within the cabinet.
Note that Cabinet folders are not like filesystem path, they are
group of files sharing some layout parameters.
|
a GCabCabinet |
Returns : |
an array of GCabFolder. [element-type GCabFolder][transfer full] |
gboolean gcab_cabinet_add_folder (GCabCabinet *cabinet,GCabFolder *folder,GError **error);
Add folder to cabinet.
|
a GCabCabinet |
|
a GCabFolder |
|
GError to set on error, or NULL. [allow-none]
|
Returns : |
TRUE on success. |
gboolean gcab_cabinet_write (GCabCabinet *cabinet,GOutputStream *stream,GCabFileCallback file_callback,GFileProgressCallback progress_callback,gpointer user_data,GCancellable *cancellable,GError **error);
Save cabinet to the output stream out. out must be a GSeekable.
|
a GCabCabinet |
|
a GOutputStream also GSeekable |
|
report current file being saved. [allow-none][scope call][closure user_data] |
|
report saving progress. [allow-none][scope call][closure user_data] |
|
user data to pass to callbacks. [closure] |
|
optional GCancellable object,
NULL to ignore. [allow-none]
|
|
GError to set on error, or NULL. [allow-none]
|
Returns : |
TRUE on success. |
gboolean gcab_cabinet_write_simple (GCabCabinet *cabinet,GOutputStream *stream,GCabFileCallback file_callback,gpointer user_data,GCancellable *cancellable,GError **error);
Save cabinet to the output stream out. out must be a GSeekable.
|
a GCabCabinet |
|
a GOutputStream also GSeekable |
|
report current file being saved. [allow-none][scope call][closure user_data] |
|
user data to pass to callbacks. [closure] |
|
optional GCancellable object,
NULL to ignore. [allow-none]
|
|
GError to set on error, or NULL. [allow-none]
|
Returns : |
TRUE on success. |
#define GCAB_ERROR gcab_error_quark ()
Error domain for the GCab library. See GError for more information on error domains.