mirror of
https://github.com/Xevion/easy7zip.git
synced 2025-12-11 00:07:09 -06:00
3.13
This commit is contained in:
100
7zip/Archive/GZip/GZipHeader.h
Executable file
100
7zip/Archive/GZip/GZipHeader.h
Executable file
@@ -0,0 +1,100 @@
|
||||
// Archive/GZip/Header.h
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef __ARCHIVE_GZIP_HEADER_H
|
||||
#define __ARCHIVE_GZIP_HEADER_H
|
||||
|
||||
#include "Common/Types.h"
|
||||
|
||||
namespace NArchive {
|
||||
namespace NGZip {
|
||||
|
||||
extern UINT16 kSignature;
|
||||
static const UINT32 kSignatureSize = 2;
|
||||
|
||||
#pragma pack( push, PragmaGZipHeaders)
|
||||
#pragma pack( push, 1)
|
||||
|
||||
namespace NCompressionMethod
|
||||
{
|
||||
enum EType
|
||||
{
|
||||
kDeflated = 8,
|
||||
};
|
||||
}
|
||||
|
||||
namespace NFileHeader
|
||||
{
|
||||
struct CBlock
|
||||
{
|
||||
UINT16 Id;
|
||||
BYTE CompressionMethod;
|
||||
BYTE Flags;
|
||||
UINT32 Time;
|
||||
BYTE ExtraFlags;
|
||||
BYTE HostOS;
|
||||
};
|
||||
|
||||
|
||||
namespace NFlags
|
||||
{
|
||||
const int kDataIsText = 1 << 0;
|
||||
const int kHeaderCRCIsPresent = 1 << 1;
|
||||
const int kExtraIsPresent = 1 << 2;
|
||||
const int kNameIsPresent = 1 << 3;
|
||||
const int kComentIsPresent = 1 << 4;
|
||||
}
|
||||
|
||||
namespace NExtraFlags
|
||||
{
|
||||
enum EEnum
|
||||
{
|
||||
kMaximum = 2,
|
||||
kFastest = 4
|
||||
};
|
||||
}
|
||||
|
||||
namespace NCompressionMethod
|
||||
{
|
||||
const BYTE kDefalate = 8;
|
||||
}
|
||||
|
||||
namespace NHostOS
|
||||
{
|
||||
enum EEnum
|
||||
{
|
||||
kFAT = 0, // filesystem used by MS-DOS, OS/2, Win32
|
||||
// pkzip 2.50 (FAT / VFAT / FAT32 file systems)
|
||||
kAMIGA = 1,
|
||||
kVMS = 2, // VAX/VMS
|
||||
kUnix = 3,
|
||||
kVM_CMS = 4,
|
||||
kAtari = 5, // what if it's a minix filesystem? [cjh]
|
||||
kHPFS = 6, // filesystem used by OS/2 (and NT 3.x)
|
||||
kMac = 7,
|
||||
kZ_System = 8,
|
||||
kCPM = 9,
|
||||
kTOPS20 = 10, // pkzip 2.50 NTFS
|
||||
kNTFS = 11, // filesystem used by Windows NT
|
||||
kQDOS = 12, // SMS/QDOS
|
||||
kAcorn = 13, // Archimedes Acorn RISC OS
|
||||
kVFAT = 14, // filesystem used by Windows 95, NT
|
||||
kMVS = 15,
|
||||
kBeOS = 16, // hybrid POSIX/database filesystem
|
||||
// BeBOX or PowerMac
|
||||
kTandem = 17,
|
||||
kTHEOS = 18,
|
||||
|
||||
kUnknown = 255
|
||||
};
|
||||
const int kNumHostSystems = 19;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma pack(pop)
|
||||
#pragma pack(pop, PragmaGZipHeaders)
|
||||
|
||||
}}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user