| GSF Reference Manual |
|---|
ZipZip — |
GsfInfileZip;
GsfInfile* gsf_infile_zip_new (GsfInput *source,
GError **err);
GsfOutfileZip;
GsfOutfile* gsf_outfile_zip_new (GsfOutput *sink,
GError **err);
gboolean gsf_outfile_zip_set_compression_method
(GsfOutfileZip *zip,
GsfZipCompressionMethod method);
GsfZipDirent;
GsfZipDirent* gsf_zip_dirent_new (void);
void gsf_zip_dirent_free (GsfZipDirent *dirent);
GsfZipVDir;
void gsf_vdir_free (GsfZipVDir *vdir,
gboolean free_dirent);
GsfZipVDir* gsf_vdir_new (char const *name,
gboolean is_directory,
GsfZipDirent *dirent);
void gsf_vdir_add_child (GsfZipVDir *vdir,
GsfZipVDir *child);
#define ZIP_DIRENT_USIZE
#define ZIP_DIRENT_OFFSET
enum GsfZipCompressionMethod;
#define ZIP_FILE_HEADER_NAME_SIZE
#define ZZIP_IS_STREAMED (p)
#define ZIP_FILE_HEADER_EXTRACT
#define ZIP_TRAILER_SIZE
#define ZIP_HEADER_TIME
#define ZIP_FILE_HEADER_SIZE
#define ZZIP_IS_ENCRYPTED (p)
#define ZIP_HEADER_VERSION
#define ZIP_BUF_SIZE
#define ZIP_DIRENT_CRC32
#define ZIP_HEADER_COMP_SIZE
#define ZIP_DIRENT_COMPR_METHOD
#define ZIP_DIRENT_FILE_TYPE
#define ZIP_FILE_HEADER_EXTRAS_SIZE
#define ZIP_DIRENT_EXTRACT
#define ZIP_DIRENT_FILE_MODE
#define ZIP_DIRENT_FLAGS
#define ZIP_FILE_HEADER_CSIZE
#define ZIP_TRAILER_DIR_SIZE
#define ZIP_TRAILER_COMMENT_SIZE
#define ZIP_TRAILER_ENTRIES
#define ZIP_NAME_SEPARATOR
#define ZIP_HEADER_SIZE
#define ZIP_HEADER_CRC
#define ZIP_FILE_HEADER_FLAGS
#define ZIP_DIRENT_EXTRAS_SIZE
#define ZIP_HEADER_COMP_METHOD
#define ZZIP_IS_COMPRLEVEL (p)
#define ZIP_DIRENT_DOSTIME
#define ZIP_DIRENT_ENCODER
#define ZIP_HEADER_OS
#define ZIP_DIRENT_COMMENT_SIZE
#define ZIP_FILE_HEADER_CRC32
#define ZIP_HEADER_FLAGS
#define ZIP_TRAILER_DISK
#define ZIP_FILE_HEADER_USIZE
#define ZIP_TRAILER_TOTAL_ENTRIES
#define ZIP_HEADER_NAME_LEN
#define ZIP_HEADER_UNCOMP_SIZE
#define ZIP_TRAILER_DIR_DISK
#define ZIP_DIRENT_CSIZE
#define ZIP_TRAILER_DIR_POS
#define ZIP_BLOCK_SIZE
#define ZIP_DIRENT_NAME_SIZE
#define ZIP_DIRENT_SIZE
#define ZIP_DIRENT_DISKSTART
#define ZIP_HEADER_EXTRA_LEN
#define ZIP_FILE_HEADER_COMPR_METHOD
#define ZIP_FILE_HEADER_DOSTIME
GObject +----GsfInput +----GsfInfile +----GsfInfileZip
GObject +----GsfOutput +----GsfOutfile +----GsfOutfileZip
"compression-level" gint : Read "internal-parent" GsfInfileZip : Write / Construct Only "source" GsfInput : Read / Write / Construct Only "compression-level" gint : Read / Write / Construct Only "entry-name" gchararray : Read / Write / Construct Only "sink" GsfOutput : Read / Write / Construct Only
GsfInfile* gsf_infile_zip_new (GsfInput *source, GError **err);
Opens the root directory of a Zip file.
NOTE : adds a reference to source
source : | A base GsfInput |
err : | A GError, optionally null
|
| Returns : | : the new zip file handler |
GsfOutfile* gsf_outfile_zip_new (GsfOutput *sink, GError **err);
Creates the root directory of a Zip file and manages the addition of children.
NOTE : adds a reference to sink
sink : | |
err : | |
| Returns : | : the new zip file handler |
gboolean gsf_outfile_zip_set_compression_method
(GsfOutfileZip *zip,
GsfZipCompressionMethod method);
zip : | |
method : | |
| Returns : |
typedef struct {
char *name;
GsfZipCompressionMethod compr_method;
guint32 crc32;
size_t csize;
size_t usize;
gsf_off_t offset;
gsf_off_t data_offset;
guint32 dostime;
} GsfZipDirent;
typedef struct {
char *name;
gboolean is_directory;
GsfZipDirent *dirent;
GSList *children, *last_child;
} GsfZipVDir;
GsfZipVDir* gsf_vdir_new (char const *name, gboolean is_directory, GsfZipDirent *dirent);
name : | |
is_directory : | |
dirent : | |
| Returns : |
typedef enum {
GSF_ZIP_STORED = 0, /* supported for export */
GSF_ZIP_SHRUNK = 1,
GSF_ZIP_REDUCEDx1 = 2,
GSF_ZIP_REDUCEDx2 = 3,
GSF_ZIP_REDUCEDx3 = 4,
GSF_ZIP_REDUCEDx4 = 5,
GSF_ZIP_IMPLODED = 6,
GSF_ZIP_TOKENIZED = 7,
GSF_ZIP_DEFLATED = 8, /* supported for export */
GSF_ZIP_DEFLATED_BETTER = 9,
GSF_ZIP_IMPLODED_BETTER = 10
} GsfZipCompressionMethod;
compression-level" property"compression-level" gint : Read
The level of compression used, zero meaning none.
Allowed values: [0,10]
Default value: 0
internal-parent" property"internal-parent" GsfInfileZip : Write / Construct Only
Internal use only.
source" property"source" GsfInput : Read / Write / Construct Only
The archive being interpreted.
compression-level" property"compression-level" gint : Read / Write / Construct Only
The level of compression used, zero meaning none.
Allowed values: [0,10]
Default value: 8
entry-name" property"entry-name" gchararray : Read / Write / Construct Only
The filename of this member in the archive without path.
Default value: NULL
| << XML and libxml | Compression >> |