GCabFolder

GCabFolder — A Cabinet folder

Stability Level

Stable, unless otherwise indicated

Functions

Properties

GCabCompression compression Read
gint comptype Read / Write / Construct Only
GByteArray * reserved Read / Write

Types and Values

Object Hierarchy

    GEnum
    ╰── GCabCompression
    GObject
    ╰── GCabFolder

Includes

#include <libgcab.h>

Description

A GCabFolder is a handle to a folder within the Cabinet archive. A Cabinet folder is not like a directory. It is a sub-container grouping GCabFiles together, sharing some common settings like the compression method.

You can retrieve the files within a folder with gcab_folder_get_files().

In order to add a file to a folder for creation, use gcab_folder_add_file().

Functions

gcab_folder_new ()

GCabFolder *
gcab_folder_new (gint comptype);

Creates a new empty Cabinet folder. Use gcab_folder_add_file() to add files to an archive.

A Cabinet folder is not a file path, it is a container for files.

Parameters

comptype

compression to used in this folder

 

Returns

a new GCabFolder


gcab_folder_add_file ()

gboolean
gcab_folder_add_file (GCabFolder *cabfolder,
                      GCabFile *cabfile,
                      gboolean recurse,
                      GCancellable *cancellable,
                      GError **error);

Add file to the GCabFolder.

Parameters

cabfolder

a GCabFolder

 

cabfile

file to be added

 

recurse

whether to recurse through subdirectories

 

cancellable

optional GCancellable object, NULL to ignore.

[allow-none]

error

GError to set on error, or NULL.

[allow-none]

Returns

TRUE on succes


gcab_folder_get_files ()

GSList *
gcab_folder_get_files (GCabFolder *cabfolder);

Get the list of GCabFile files contained in the cabfolder .

Parameters

cabfolder

a GCabFolder

 

Returns

list of files.

[element-type GCabFile][transfer full]


gcab_folder_get_nfiles ()

guint
gcab_folder_get_nfiles (GCabFolder *cabfolder);

Get the number of files in this folder .

Parameters

cabfolder

a GCabFolder

 

Returns

a guint

Types and Values

enum GCabCompression

Compression used by the GCabFolder.

Members

GCAB_COMPRESSION_NONE

No compression.

 

GCAB_COMPRESSION_MSZIP

MSZIP compression.

 

GCAB_COMPRESSION_QUANTUM

QUANTUM compression.

 

GCAB_COMPRESSION_LZX

LZX compression.

 

GCAB_COMPRESSION_MASK

compression value mask.

 

GCabFolder

typedef struct _GCabFolder GCabFolder;

An opaque object, referencing a folder in a Cabinet.

Property Details

The “compression” property

  “compression”              GCabCompression

compression.

Flags: Read

Default value: GCAB_COMPRESSION_NONE


The “comptype” property

  “comptype”                 gint

comptype.

Flags: Read / Write / Construct Only

Allowed values: >= 0

Default value: 0


The “reserved” property

  “reserved”                 GByteArray *

Reserved.

Flags: Read / Write

See Also

GCabFolder