![]() | ![]() | ![]() | GSF Reference Manual | ![]() |
---|
Zip —
struct GsfInfileZip; GsfInfile* gsf_infile_zip_new (GsfInput *source, GError **err); struct GsfOutfileZip; GsfOutfile* gsf_outfile_zip_new (GsfOutput *sink, GError **err); gboolean gsf_outfile_zip_set_compression_method (GsfOutfileZip *zip, GsfZipCompressionMethod method); struct GsfZipDirent; GsfZipDirent* gsf_zip_dirent_new (void); void gsf_zip_dirent_free (GsfZipDirent *dirent); struct 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
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 : |
struct GsfZipDirent { char *name; GsfZipCompressionMethod compr_method; guint32 crc32; size_t csize; size_t usize; gsf_off_t offset; gsf_off_t data_offset; guint32 dostime; };
struct GsfZipVDir { char *name; gboolean is_directory; GsfZipDirent *dirent; GSList *children; };
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;
<< XML and libxml | Compression >> |