Mercurial > vba-linux
diff src/win32/7zip/7z/CPP/7zip/Archive/7z/7zHeader.h @ 1:f9f4f1b99eed
importing src directory
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:27 -0600 |
parents | |
children |
line wrap: on
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/src/win32/7zip/7z/CPP/7zip/Archive/7z/7zHeader.h Sat Mar 03 10:31:27 2012 -0600 1.3 @@ -0,0 +1,97 @@ 1.4 +// 7z/7zHeader.h 1.5 + 1.6 +#ifndef __7Z_HEADER_H 1.7 +#define __7Z_HEADER_H 1.8 + 1.9 +#include "../../../Common/Types.h" 1.10 + 1.11 +namespace NArchive { 1.12 +namespace N7z { 1.13 + 1.14 +const int kSignatureSize = 6; 1.15 +extern Byte kSignature[kSignatureSize]; 1.16 + 1.17 +// #define _7Z_VOL 1.18 +// 7z-MultiVolume is not finished yet. 1.19 +// It can work already, but I still do not like some 1.20 +// things of that new multivolume format. 1.21 +// So please keep it commented. 1.22 + 1.23 +#ifdef _7Z_VOL 1.24 +extern Byte kFinishSignature[kSignatureSize]; 1.25 +#endif 1.26 + 1.27 +struct CArchiveVersion 1.28 +{ 1.29 + Byte Major; 1.30 + Byte Minor; 1.31 +}; 1.32 + 1.33 +const Byte kMajorVersion = 0; 1.34 + 1.35 +struct CStartHeader 1.36 +{ 1.37 + UInt64 NextHeaderOffset; 1.38 + UInt64 NextHeaderSize; 1.39 + UInt32 NextHeaderCRC; 1.40 +}; 1.41 + 1.42 +const UInt32 kStartHeaderSize = 20; 1.43 + 1.44 +#ifdef _7Z_VOL 1.45 +struct CFinishHeader: public CStartHeader 1.46 +{ 1.47 + UInt64 ArchiveStartOffset; // data offset from end if that struct 1.48 + UInt64 AdditionalStartBlockSize; // start signature & start header size 1.49 +}; 1.50 + 1.51 +const UInt32 kFinishHeaderSize = kStartHeaderSize + 16; 1.52 +#endif 1.53 + 1.54 +namespace NID 1.55 +{ 1.56 + enum EEnum 1.57 + { 1.58 + kEnd, 1.59 + 1.60 + kHeader, 1.61 + 1.62 + kArchiveProperties, 1.63 + 1.64 + kAdditionalStreamsInfo, 1.65 + kMainStreamsInfo, 1.66 + kFilesInfo, 1.67 + 1.68 + kPackInfo, 1.69 + kUnpackInfo, 1.70 + kSubStreamsInfo, 1.71 + 1.72 + kSize, 1.73 + kCRC, 1.74 + 1.75 + kFolder, 1.76 + 1.77 + kCodersUnpackSize, 1.78 + kNumUnpackStream, 1.79 + 1.80 + kEmptyStream, 1.81 + kEmptyFile, 1.82 + kAnti, 1.83 + 1.84 + kName, 1.85 + kCTime, 1.86 + kATime, 1.87 + kMTime, 1.88 + kWinAttributes, 1.89 + kComment, 1.90 + 1.91 + kEncodedHeader, 1.92 + 1.93 + kStartPos, 1.94 + kDummy 1.95 + }; 1.96 +} 1.97 + 1.98 +}} 1.99 + 1.100 +#endif