3 #ifndef __7Z_HEADER_H
\r
4 #define __7Z_HEADER_H
\r
6 #include "../../../Common/Types.h"
\r
11 const int kSignatureSize = 6;
\r
12 extern Byte kSignature[kSignatureSize];
\r
15 // 7z-MultiVolume is not finished yet.
\r
16 // It can work already, but I still do not like some
\r
17 // things of that new multivolume format.
\r
18 // So please keep it commented.
\r
21 extern Byte kFinishSignature[kSignatureSize];
\r
24 struct CArchiveVersion
\r
30 const Byte kMajorVersion = 0;
\r
34 UInt64 NextHeaderOffset;
\r
35 UInt64 NextHeaderSize;
\r
36 UInt32 NextHeaderCRC;
\r
39 const UInt32 kStartHeaderSize = 20;
\r
42 struct CFinishHeader: public CStartHeader
\r
44 UInt64 ArchiveStartOffset; // data offset from end if that struct
\r
45 UInt64 AdditionalStartBlockSize; // start signature & start header size
\r
48 const UInt32 kFinishHeaderSize = kStartHeaderSize + 16;
\r
61 kAdditionalStreamsInfo,
\r