00001 #ifndef CLASSLIB_BZ_CONSTANTS_H 00002 # define CLASSLIB_BZ_CONSTANTS_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "classlib/zip/ZipUtils.h" 00007 00008 namespace lat { 00009 //<<<<<< PUBLIC DEFINES >>>>>> 00010 //<<<<<< PUBLIC CONSTANTS >>>>>> 00011 //<<<<<< PUBLIC TYPES >>>>>> 00012 //<<<<<< PUBLIC VARIABLES >>>>>> 00013 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00014 //<<<<<< CLASS DECLARATIONS >>>>>> 00015 00017 struct BZConstants : ZipUtils 00018 { 00019 // Compression block size 00020 enum { BEST_COMPRESSION = 9 }; //< Best compression level 00021 enum { DEFAULT_COMPRESSION = 9 }; //< Default compression level 00022 enum { BEST_SPEED = 1 }; //< Fastest compression level 00023 00024 // Compression engine behaviour control 00025 enum { DEFAULT_WORK_FACTOR = 0 }; /*< Effort to expend before 00026 falling back on the slower 00027 sort algorithm. */ 00028 enum { MAX_WORK_FACTOR = 250 }; //< Maximum work factor 00029 00030 // BZIP stream structure (not used, BZLIB encapsulates this fully) 00031 enum { BZIP_MAGIC = 0x685a42 }; // "BZh" 00032 enum { 00033 BZHDR_MAGIC_OFF = 0, BZHDR_MAGIC_LEN = 3, 00034 BZHDR_BLKSZ_OFF = 3, BZHDR_BLKSZ_LEN = 1, 00035 BZHDR_SIZE = 4 00036 00037 // This is followed by data (FIXME: what comes at end?) 00038 // (FIXME: concatenated bzip2 files?). 00039 }; 00040 }; 00041 00042 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00043 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00044 00045 } // namespace lat 00046 #endif // CLASSLIB_BZ_CONSTANTS_H