Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

RageFileDriverZip.cpp File Reference

#include "global.h"
#include "RageFileDriverZip.h"
#include "RageFileDriverSlice.h"
#include "RageFileDriverDeflate.h"
#include "RageLog.h"
#include "RageUtil.h"
#include "RageUtil_FileDB.h"
#include <cerrno>

Classes

struct  FileDriverEntry_ZIP
struct  FileInfo
struct  end_central_dir_record

Defines

#define INBUFSIZE   1024*4
#define STORED   0
#define DEFLATED   8
#define ECREC_SIZE   18
#define NUMBER_THIS_DISK   4
#define NUM_DISK_WITH_START_CENTRAL_DIR   6
#define NUM_ENTRIES_CENTRL_DIR_THS_DISK   8
#define TOTAL_ENTRIES_CENTRAL_DIR   10
#define SIZE_CENTRAL_DIRECTORY   12
#define OFFSET_START_CENTRAL_DIRECTORY   16
#define ZIPFILE_COMMENT_LENGTH   20
#define CREC_SIZE   42
#define C_VERSION_MADE_BY_0   0
#define C_VERSION_MADE_BY_1   1
#define C_VERSION_NEEDED_TO_EXTRACT_0   2
#define C_VERSION_NEEDED_TO_EXTRACT_1   3
#define C_GENERAL_PURPOSE_BIT_FLAG   4
#define C_COMPRESSION_METHOD   6
#define C_LAST_MOD_DOS_DATETIME   8
#define C_CRC32   12
#define C_COMPRESSED_SIZE   16
#define C_UNCOMPRESSED_SIZE   20
#define C_FILENAME_LENGTH   24
#define C_EXTRA_FIELD_LENGTH   26
#define C_FILE_COMMENT_LENGTH   28
#define C_DISK_NUMBER_START   30
#define C_INTERNAL_FILE_ATTRIBUTES   32
#define C_EXTERNAL_FILE_ATTRIBUTES   34
#define C_RELATIVE_OFFSET_LOCAL_HEADER   38
#define LREC_SIZE   26 /* lengths of local file headers, central */
#define L_FILENAME_LENGTH   22
#define L_EXTRA_FIELD_LENGTH   24

Typedefs

typedef unsigned char cdir_byte_hdr [CREC_SIZE]

Functions

unsigned short makeword (const unsigned char *b)
unsigned long makelong (const unsigned char *sig)

Variables

FileDriverEntry_ZIP g_RegisterDriver
CString central_hdr_sig = "\x50\x4B\x01\x02"
CString local_hdr_sig = "\x50\x4B\x03\x04"
CString end_central_sig = "\x50\x4B\x05\x06"

Define Documentation

#define C_COMPRESSED_SIZE   16
 

#define C_COMPRESSION_METHOD   6
 

#define C_CRC32   12
 

#define C_DISK_NUMBER_START   30
 

#define C_EXTERNAL_FILE_ATTRIBUTES   34
 

#define C_EXTRA_FIELD_LENGTH   26
 

#define C_FILE_COMMENT_LENGTH   28
 

#define C_FILENAME_LENGTH   24
 

#define C_GENERAL_PURPOSE_BIT_FLAG   4
 

#define C_INTERNAL_FILE_ATTRIBUTES   32
 

#define C_LAST_MOD_DOS_DATETIME   8
 

#define C_RELATIVE_OFFSET_LOCAL_HEADER   38
 

#define C_UNCOMPRESSED_SIZE   20
 

#define C_VERSION_MADE_BY_0   0
 

#define C_VERSION_MADE_BY_1   1
 

#define C_VERSION_NEEDED_TO_EXTRACT_0   2
 

#define C_VERSION_NEEDED_TO_EXTRACT_1   3
 

#define CREC_SIZE   42
 

#define DEFLATED   8
 

#define ECREC_SIZE   18
 

#define INBUFSIZE   1024*4
 

#define L_EXTRA_FIELD_LENGTH   24
 

#define L_FILENAME_LENGTH   22
 

#define LREC_SIZE   26 /* lengths of local file headers, central */
 

#define NUM_DISK_WITH_START_CENTRAL_DIR   6
 

#define NUM_ENTRIES_CENTRL_DIR_THS_DISK   8
 

#define NUMBER_THIS_DISK   4
 

#define OFFSET_START_CENTRAL_DIRECTORY   16
 

#define SIZE_CENTRAL_DIRECTORY   12
 

#define STORED   0
 

#define TOTAL_ENTRIES_CENTRAL_DIR   10
 

#define ZIPFILE_COMMENT_LENGTH   20
 


Typedef Documentation

typedef unsigned char cdir_byte_hdr[CREC_SIZE]
 


Function Documentation

unsigned long makelong const unsigned char *  sig  )  [static]
 

unsigned short makeword const unsigned char *  b  )  [static]
 


Variable Documentation

CString central_hdr_sig = "\x50\x4B\x01\x02" [static]
 

CString end_central_sig = "\x50\x4B\x05\x06" [static]
 

FileDriverEntry_ZIP g_RegisterDriver [static]
 

CString local_hdr_sig = "\x50\x4B\x03\x04" [static]
 


Generated on Thu Jan 27 20:57:50 2005 for StepMania by doxygen 1.3.7