Logo ROOT  
Reference Guide
TZIPFile.h
Go to the documentation of this file.
1 // @(#)root/io:$Id$
2 // Author: Fons Rademakers 30/6/04
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TZIPFile
13 #define ROOT_TZIPFile
14 
15 #include "TArchiveFile.h"
16 
17 class TZIPMember;
18 
19 
20 class TZIPFile : public TArchiveFile {
21 
22 protected:
23  Long64_t fDirPos; ///< Central directory position
24  Long64_t fDirSize; ///< Central directory size
25  Long64_t fDirOffset; ///< Central directory offset (from the beginning of the archive)
26  TString fComment; ///< Archive comment
27 
34  UInt_t Get(const void *buffer, Int_t bytes);
35  ULong64_t Get64(const void *buffer, Int_t bytes);
37 
38  /// ZIP archive constants
40  // - Archive version required (and made)
42 
43  // - Magic header constants
44  kDIR_HEADER_MAGIC = 0x02014b50,
45  kENTRY_HEADER_MAGIC = 0x04034b50,
46  kEND_HEADER_MAGIC = 0x06054b50,
49  kZIP64_EXTENDED_MAGIC = 0x0001, ///< Zip64 Extended Information Extra Field
50  kZIP_MAGIC_LEN = 4, ///< Length of magic's
51  kMAX_VAR_LEN = 0xffff, ///< Max variable-width field length
52  kMAX_SIZE = 0xffffffff, ///< Max size of things
53 
54  // - Offsets into the central directory headers
72 
73  // - Offsets into the Zip64 end of central directory record (EDR)
85 
86  // - Offsets into the Zip64 end of central directory locator (EDL)
92 
93  // - Offsets into the end-of-archive header
103 
104  // - Offsets into the local entry headers
116 
117  // - Offsets into the Zip64 Extended Information Extra Field
125 
126  // - Compression method and strategy
127  kSTORED = 0, ///< Stored as is
128  kDEFLATED = 8 ///< Stored using deflate
129  };
130 
131  TZIPFile(const TZIPFile&) = delete; // Not implemented
132  TZIPFile& operator=(const TZIPFile&) = delete; // Not implemented
133 
134 public:
135  TZIPFile();
136  TZIPFile(const char *archive, const char *member, TFile *file);
137  virtual ~TZIPFile() { }
138 
139  virtual Int_t OpenArchive();
140  virtual Int_t SetCurrentMember();
141 
142  void Print(Option_t *option = "") const;
143 
144  ClassDef(TZIPFile,1) //A ZIP archive file
145 };
146 
147 /**
148 \class TZIPMember
149 \ingroup IO
150 A ZIP archive consists of files compressed with the popular ZLIB
151 compression algorithm; this class records the information about a
152 single archive member.
153 */
154 
155 
156 class TZIPMember : public TArchiveMember {
157 
158 friend class TZIPFile;
159 
160 private:
161  void *fLocal; ///< Extra file header data
162  UInt_t fLocalLen; ///< Length of extra file header data
163  void *fGlobal; ///< Extra directory data
164  UInt_t fGlobalLen; ///< Length of extra directory data
165  UInt_t fCRC32; ///< CRC-32 for all decompressed data
166  UInt_t fAttrInt; ///< Internal file attributes
167  UInt_t fAttrExt; ///< External file attributes
168  UInt_t fMethod; ///< Compression type
169  UInt_t fLevel; ///< Compression level
170 
171 public:
172  TZIPMember();
173  TZIPMember(const char *name);
174  TZIPMember(const TZIPMember &member);
175  TZIPMember &operator=(const TZIPMember &rhs);
176  virtual ~TZIPMember();
177 
178  void *GetLocal() const { return fLocal; }
179  UInt_t GetLocalLen() const { return fLocalLen; }
180  void *GetGlobal() const { return fGlobal; }
181  UInt_t GetGlobalLen() const { return fGlobalLen; }
182  UInt_t GetCRC32() const { return fCRC32; }
183  UInt_t GetAttrInt() const { return fAttrInt; }
184  UInt_t GetAttrExt() const { return fAttrExt; }
185  UInt_t GetMethod() const { return fMethod; }
186  UInt_t GetLevel() const { return fLevel; }
187 
188  void Print(Option_t *option = "") const;
189 
190  ClassDef(TZIPMember, 0); //A ZIP archive member file
191 };
192 
193 #endif
TZIPFile::kZIP64_EDR_DIR_OFFSET_LEN
@ kZIP64_EDR_DIR_OFFSET_LEN
Definition: TZIPFile.h:83
TArchiveFile.h
m
auto * m
Definition: textangle.C:8
TZIPMember::fGlobalLen
UInt_t fGlobalLen
Length of extra directory data.
Definition: TZIPFile.h:164
TZIPFile::kZIP64_EDR_DISK_LEN
@ kZIP64_EDR_DISK_LEN
Definition: TZIPFile.h:78
TZIPFile::kEND_MAGIC_OFF
@ kEND_MAGIC_OFF
Definition: TZIPFile.h:94
TZIPFile::kEND_DIR_OFFSET_OFF
@ kEND_DIR_OFFSET_OFF
Definition: TZIPFile.h:100
TZIPFile::Get
UInt_t Get(const void *buffer, Int_t bytes)
Read a "bytes" long little-endian integer value from "buffer".
Definition: TZIPFile.cxx:514
TZIPFile::kEND_DIR_SIZE_OFF
@ kEND_DIR_SIZE_OFF
Definition: TZIPFile.h:99
TArchiveFile
Class describing an archive file containing multiple sub-files, like a ZIP or TAR archive.
Definition: TArchiveFile.h:24
TZIPFile::kZIP64_EDR_DIR_SIZE_LEN
@ kZIP64_EDR_DIR_SIZE_LEN
Definition: TZIPFile.h:82
TZIPFile::kZIP64_EXTENDED_MAGIC
@ kZIP64_EXTENDED_MAGIC
Zip64 Extended Information Extra Field.
Definition: TZIPFile.h:49
TZIPFile::kEND_HEADER_SIZE
@ kEND_HEADER_SIZE
Definition: TZIPFile.h:102
kTRUE
const Bool_t kTRUE
Definition: RtypesCore.h:91
TZIPFile::kZIP64_EDL_TOTAL_DISK_OFF
@ kZIP64_EDL_TOTAL_DISK_OFF
Definition: TZIPFile.h:90
TZIPFile::fComment
TString fComment
Archive comment.
Definition: TZIPFile.h:26
TZIPFile::kZIP64_EXTENTED_CSIZE_OFF
@ kZIP64_EXTENTED_CSIZE_OFF
Definition: TZIPFile.h:121
TZIPFile::kDIR_VREQD_OFF
@ kDIR_VREQD_OFF
Definition: TZIPFile.h:57
TZIPFile::kENTRY_CSIZE_OFF
@ kENTRY_CSIZE_OFF
Definition: TZIPFile.h:111
TZIPFile::kDIR_EXT_ATTR_LEN
@ kDIR_EXT_ATTR_LEN
Definition: TZIPFile.h:69
TZIPFile::kDIR_DISK_START_LEN
@ kDIR_DISK_START_LEN
Definition: TZIPFile.h:67
TZIPFile::kDIR_EXTRALEN_OFF
@ kDIR_EXTRALEN_OFF
Definition: TZIPFile.h:65
Option_t
const char Option_t
Definition: RtypesCore.h:66
TZIPFile::kZIP64_EDR_DIR_DISK_OFF
@ kZIP64_EDR_DIR_DISK_OFF
Definition: TZIPFile.h:79
TZIPFile::kZIP64_EDR_DISK_HDRS_OFF
@ kZIP64_EDR_DISK_HDRS_OFF
Definition: TZIPFile.h:80
TZIPFile::kZIP64_EDL_REC_OFFSET_OFF
@ kZIP64_EDL_REC_OFFSET_OFF
Definition: TZIPFile.h:89
TZIPFile::kDIR_METHOD_LEN
@ kDIR_METHOD_LEN
Definition: TZIPFile.h:59
TZIPFile::kZIP64_EXTENDED_DISK_OFF
@ kZIP64_EXTENDED_DISK_OFF
Definition: TZIPFile.h:123
TZIPMember::GetCRC32
UInt_t GetCRC32() const
Definition: TZIPFile.h:182
TZIPFile::kZIP_MAGIC_LEN
@ kZIP_MAGIC_LEN
Length of magic's.
Definition: TZIPFile.h:50
TZIPFile::kENTRY_USIZE_OFF
@ kENTRY_USIZE_OFF
Definition: TZIPFile.h:112
TZIPMember
A ZIP archive consists of files compressed with the popular ZLIB compression algorithm; this class re...
Definition: TZIPFile.h:156
TZIPFile::kEND_DIR_OFFSET_LEN
@ kEND_DIR_OFFSET_LEN
Definition: TZIPFile.h:100
TZIPFile::kZIP64_EDR_TOTAL_HDRS_OFF
@ kZIP64_EDR_TOTAL_HDRS_OFF
Definition: TZIPFile.h:81
TZIPFile::kZIP64_EDL_MAGIC_OFF
@ kZIP64_EDL_MAGIC_OFF
Definition: TZIPFile.h:87
TZIPFile::kENTRY_VREQD_OFF
@ kENTRY_VREQD_OFF
Definition: TZIPFile.h:106
TZIPMember::GetGlobal
void * GetGlobal() const
Definition: TZIPFile.h:180
TZIPFile::kMAX_VAR_LEN
@ kMAX_VAR_LEN
Max variable-width field length.
Definition: TZIPFile.h:51
TZIPFile::SetCurrentMember
virtual Int_t SetCurrentMember()
Find the desired member in the member array and make it the current member.
Definition: TZIPFile.cxx:486
TZIPFile::kENTRY_HEADER_SIZE
@ kENTRY_HEADER_SIZE
Definition: TZIPFile.h:115
TZIPFile::kEND_COMMENTLEN_OFF
@ kEND_COMMENTLEN_OFF
Definition: TZIPFile.h:101
Long64_t
long long Long64_t
Definition: RtypesCore.h:73
TZIPFile::kZIP64_EXTENDED_SIZE_LEN
@ kZIP64_EXTENDED_SIZE_LEN
Definition: TZIPFile.h:119
TZIPFile::kDIR_HEADER_SIZE
@ kDIR_HEADER_SIZE
Definition: TZIPFile.h:71
TArchiveMember
Definition: TArchiveFile.h:65
TZIPFile::kDIR_VMADE_OFF
@ kDIR_VMADE_OFF
Definition: TZIPFile.h:56
TZIPMember::GetMethod
UInt_t GetMethod() const
Definition: TZIPFile.h:185
TZIPFile::kDIR_EXT_ATTR_OFF
@ kDIR_EXT_ATTR_OFF
Definition: TZIPFile.h:69
TZIPFile::ReadMemberHeader
Int_t ReadMemberHeader(TZIPMember *member)
Read the member header of the ZIP archive.
Definition: TZIPFile.cxx:404
TZIPMember::fMethod
UInt_t fMethod
Compression type.
Definition: TZIPFile.h:168
TZIPFile::kDIR_INT_ATTR_OFF
@ kDIR_INT_ATTR_OFF
Definition: TZIPFile.h:68
TZIPFile::kDIR_CRC32_OFF
@ kDIR_CRC32_OFF
Definition: TZIPFile.h:61
TZIPFile::kZIP64_EDR_DIR_DISK_LEN
@ kZIP64_EDR_DIR_DISK_LEN
Definition: TZIPFile.h:79
TZIPMember::~TZIPMember
virtual ~TZIPMember()
Cleanup.
Definition: TZIPFile.cxx:661
TZIPFile::kZIP64_EDL_REC_OFFSET_LEN
@ kZIP64_EDL_REC_OFFSET_LEN
Definition: TZIPFile.h:89
TZIPFile::kZIP64_EDL_HEADER_MAGIC
@ kZIP64_EDL_HEADER_MAGIC
Definition: TZIPFile.h:48
Int_t
int Int_t
Definition: RtypesCore.h:45
TZIPFile::kENTRY_CRC32_LEN
@ kENTRY_CRC32_LEN
Definition: TZIPFile.h:110
TZIPFile::kENTRY_FLAG_LEN
@ kENTRY_FLAG_LEN
Definition: TZIPFile.h:107
TZIPMember::fAttrExt
UInt_t fAttrExt
External file attributes.
Definition: TZIPFile.h:167
TZIPFile::kDIR_EXTRALEN_LEN
@ kDIR_EXTRALEN_LEN
Definition: TZIPFile.h:65
TZIPFile::kSTORED
@ kSTORED
Stored as is.
Definition: TZIPFile.h:127
TZIPFile::ReadEndHeader
Int_t ReadEndHeader(Long64_t pos)
Read the end header of the ZIP archive including the archive comment at the current file position.
Definition: TZIPFile.cxx:139
TZIPFile::kEND_DISK_HDRS_OFF
@ kEND_DISK_HDRS_OFF
Definition: TZIPFile.h:97
TZIPFile::kENTRY_METHOD_OFF
@ kENTRY_METHOD_OFF
Definition: TZIPFile.h:108
TZIPFile::kEND_DIR_DISK_LEN
@ kEND_DIR_DISK_LEN
Definition: TZIPFile.h:96
TString
Basic string class.
Definition: TString.h:136
TZIPFile::kEND_HEADER_MAGIC
@ kEND_HEADER_MAGIC
Definition: TZIPFile.h:46
TZIPFile::kDIR_MAGIC_OFF
@ kDIR_MAGIC_OFF
Definition: TZIPFile.h:55
TZIPFile::kDIR_METHOD_OFF
@ kDIR_METHOD_OFF
Definition: TZIPFile.h:59
TZIPFile::fDirSize
Long64_t fDirSize
Central directory size.
Definition: TZIPFile.h:24
TZIPFile::kDIR_USIZE_LEN
@ kDIR_USIZE_LEN
Definition: TZIPFile.h:63
TZIPMember::GetLocal
void * GetLocal() const
Definition: TZIPFile.h:178
TZIPFile::FindEndHeader
Long64_t FindEndHeader()
Find the end header of the ZIP archive. Returns 0 in case of error.
Definition: TZIPFile.cxx:98
TZIPMember::fLevel
UInt_t fLevel
Compression level.
Definition: TZIPFile.h:169
TZIPFile::kDIR_COMMENTLEN_LEN
@ kDIR_COMMENTLEN_LEN
Definition: TZIPFile.h:66
TZIPFile::kZIP64_EXTENDED_CSIZE_LEN
@ kZIP64_EXTENDED_CSIZE_LEN
Definition: TZIPFile.h:121
TZIPFile::kENTRY_VREQD_LEN
@ kENTRY_VREQD_LEN
Definition: TZIPFile.h:106
TZIPFile::kDIR_DISK_START_OFF
@ kDIR_DISK_START_OFF
Definition: TZIPFile.h:67
TZIPMember::fGlobal
void * fGlobal
Extra directory data.
Definition: TZIPFile.h:163
TZIPFile::kZIP64_EDR_VERS_MADE_LEN
@ kZIP64_EDR_VERS_MADE_LEN
Definition: TZIPFile.h:76
bool
TZIPFile::kENTRY_NAMELEN_OFF
@ kENTRY_NAMELEN_OFF
Definition: TZIPFile.h:113
TZIPFile::kZIP64_EDL_DISK_LEN
@ kZIP64_EDL_DISK_LEN
Definition: TZIPFile.h:88
TZIPFile::ReadDirectory
Int_t ReadDirectory()
Read the directory of the ZIP archive.
Definition: TZIPFile.cxx:278
TZIPFile::kZIP64_EDL_TOTAL_DISK_LEN
@ kZIP64_EDL_TOTAL_DISK_LEN
Definition: TZIPFile.h:90
TZIPFile::ReadZip64EndRecord
Int_t ReadZip64EndRecord(Long64_t pos)
Read Zip64 end of central directory record.
Definition: TZIPFile.cxx:246
TZIPFile::kZIP64_EDR_HEADER_MAGIC
@ kZIP64_EDR_HEADER_MAGIC
Definition: TZIPFile.h:47
TZIPFile::kEND_DIR_SIZE_LEN
@ kEND_DIR_SIZE_LEN
Definition: TZIPFile.h:99
TZIPFile::kDIR_DATE_OFF
@ kDIR_DATE_OFF
Definition: TZIPFile.h:60
TZIPMember::GetAttrInt
UInt_t GetAttrInt() const
Definition: TZIPFile.h:183
TZIPFile::kZIP64_EDR_DISK_OFF
@ kZIP64_EDR_DISK_OFF
Definition: TZIPFile.h:78
TZIPFile::kZIP64_EXTENDED_HDR_OFFSET_OFF
@ kZIP64_EXTENDED_HDR_OFFSET_OFF
Definition: TZIPFile.h:122
TZIPFile::kZIP64_EDL_HEADER_SIZE
@ kZIP64_EDL_HEADER_SIZE
Definition: TZIPFile.h:91
TZIPFile::kENTRY_DATE_LEN
@ kENTRY_DATE_LEN
Definition: TZIPFile.h:109
TZIPFile::kDIR_VREQD_LEN
@ kDIR_VREQD_LEN
Definition: TZIPFile.h:57
TZIPMember::fLocalLen
UInt_t fLocalLen
Length of extra file header data.
Definition: TZIPFile.h:162
TZIPFile::kEND_COMMENTLEN_LEN
@ kEND_COMMENTLEN_LEN
Definition: TZIPFile.h:101
TZIPFile::kEND_DISK_LEN
@ kEND_DISK_LEN
Definition: TZIPFile.h:95
TZIPFile::kZIP64_EDR_MAGIC_OFF
@ kZIP64_EDR_MAGIC_OFF
Definition: TZIPFile.h:74
TZIPFile::kDIR_CSIZE_LEN
@ kDIR_CSIZE_LEN
Definition: TZIPFile.h:62
TZIPFile::kZIP64_EXTENDED_DISK_LEN
@ kZIP64_EXTENDED_DISK_LEN
Definition: TZIPFile.h:123
TZIPMember::fAttrInt
UInt_t fAttrInt
Internal file attributes.
Definition: TZIPFile.h:166
TZIPFile::kEND_DISK_OFF
@ kEND_DISK_OFF
Definition: TZIPFile.h:95
TZIPFile::kZIP64_EXTENDED_MAGIC_LEN
@ kZIP64_EXTENDED_MAGIC_LEN
Definition: TZIPFile.h:118
TZIPFile::kENTRY_FLAG_OFF
@ kENTRY_FLAG_OFF
Definition: TZIPFile.h:107
TZIPFile::kDIR_NAMELEN_OFF
@ kDIR_NAMELEN_OFF
Definition: TZIPFile.h:64
TZIPMember::GetGlobalLen
UInt_t GetGlobalLen() const
Definition: TZIPFile.h:181
TZIPFile::kDIR_CSIZE_OFF
@ kDIR_CSIZE_OFF
Definition: TZIPFile.h:62
TZIPMember::fCRC32
UInt_t fCRC32
CRC-32 for all decompressed data.
Definition: TZIPFile.h:165
TZIPMember::Print
void Print(Option_t *option="") const
Pretty print basic ZIP member info.
Definition: TZIPFile.cxx:670
TZIPFile::kZIP64_EDR_SIZE_OFF
@ kZIP64_EDR_SIZE_OFF
Definition: TZIPFile.h:75
TZIPMember::fLocal
void * fLocal
Extra file header data.
Definition: TZIPFile.h:161
TZIPFile::kENTRY_EXTRALEN_OFF
@ kENTRY_EXTRALEN_OFF
Definition: TZIPFile.h:114
TZIPMember::TZIPMember
TZIPMember()
Default ctor.
Definition: TZIPFile.cxx:569
TZIPFile::kEND_TOTAL_HDRS_OFF
@ kEND_TOTAL_HDRS_OFF
Definition: TZIPFile.h:98
TZIPFile::EZIPConstants
EZIPConstants
ZIP archive constants.
Definition: TZIPFile.h:39
TZIPMember::operator=
TZIPMember & operator=(const TZIPMember &rhs)
Assignment operator.
Definition: TZIPFile.cxx:628
TZIPFile::kENTRY_HEADER_MAGIC
@ kENTRY_HEADER_MAGIC
Definition: TZIPFile.h:45
TZIPFile::kZIP64_EDR_VERS_EXT_OFF
@ kZIP64_EDR_VERS_EXT_OFF
Definition: TZIPFile.h:77
TZIPFile::kZIP64_EXTENDED_USIZE_LEN
@ kZIP64_EXTENDED_USIZE_LEN
Definition: TZIPFile.h:120
TZIPFile::fDirOffset
Long64_t fDirOffset
Central directory offset (from the beginning of the archive)
Definition: TZIPFile.h:25
TZIPFile::kENTRY_NAMELEN_LEN
@ kENTRY_NAMELEN_LEN
Definition: TZIPFile.h:113
TZIPFile::kZIP64_EDR_VERS_EXT_LEN
@ kZIP64_EDR_VERS_EXT_LEN
Definition: TZIPFile.h:77
TZIPFile::Get64
ULong64_t Get64(const void *buffer, Int_t bytes)
Read a 8 byte long little-endian integer value from "buffer".
Definition: TZIPFile.cxx:535
TZIPFile::kDIR_CRC32_LEN
@ kDIR_CRC32_LEN
Definition: TZIPFile.h:61
TZIPFile::kZIP64_EXTENDED_SIZE
@ kZIP64_EXTENDED_SIZE
Definition: TZIPFile.h:124
TZIPFile::TZIPFile
TZIPFile(const TZIPFile &)=delete
TFile
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
Definition: TFile.h:54
TZIPFile::kEND_TOTAL_HDRS_LEN
@ kEND_TOTAL_HDRS_LEN
Definition: TZIPFile.h:98
TZIPFile::kDIR_ENTRY_POS_LEN
@ kDIR_ENTRY_POS_LEN
Definition: TZIPFile.h:70
unsigned int
TZIPFile::ReadZip64EndLocator
Long64_t ReadZip64EndLocator(Long64_t pos)
Read Zip64 end of central directory locator.
Definition: TZIPFile.cxx:211
TZIPFile::kZIP64_EDL_DISK_OFF
@ kZIP64_EDL_DISK_OFF
Definition: TZIPFile.h:88
TZIPFile::kMAX_SIZE
@ kMAX_SIZE
Max size of things.
Definition: TZIPFile.h:52
TZIPFile::kDIR_FLAG_OFF
@ kDIR_FLAG_OFF
Definition: TZIPFile.h:58
TZIPFile::kENTRY_MAGIC_OFF
@ kENTRY_MAGIC_OFF
Definition: TZIPFile.h:105
ULong64_t
unsigned long long ULong64_t
Definition: RtypesCore.h:74
TZIPFile::kENTRY_EXTRALEN_LEN
@ kENTRY_EXTRALEN_LEN
Definition: TZIPFile.h:114
TZIPMember::GetLocalLen
UInt_t GetLocalLen() const
Definition: TZIPFile.h:179
TZIPFile::kZIP64_EDR_VERS_MADE_OFF
@ kZIP64_EDR_VERS_MADE_OFF
Definition: TZIPFile.h:76
TZIPFile::fDirPos
Long64_t fDirPos
Central directory position.
Definition: TZIPFile.h:23
TZIPFile::kDIR_NAMELEN_LEN
@ kDIR_NAMELEN_LEN
Definition: TZIPFile.h:64
TZIPFile::kZIP64_EXTENDED_MAGIC_OFF
@ kZIP64_EXTENDED_MAGIC_OFF
Definition: TZIPFile.h:118
TZIPFile::operator=
TZIPFile & operator=(const TZIPFile &)=delete
TZIPFile::kZIP64_EDR_HEADER_SIZE
@ kZIP64_EDR_HEADER_SIZE
Definition: TZIPFile.h:84
TZIPFile::kDIR_INT_ATTR_LEN
@ kDIR_INT_ATTR_LEN
Definition: TZIPFile.h:68
TZIPFile::kZIP64_EDR_DIR_SIZE_OFF
@ kZIP64_EDR_DIR_SIZE_OFF
Definition: TZIPFile.h:82
TZIPFile::kDIR_DATE_LEN
@ kDIR_DATE_LEN
Definition: TZIPFile.h:60
file
Definition: file.py:1
TZIPFile::kENTRY_DATE_OFF
@ kENTRY_DATE_OFF
Definition: TZIPFile.h:109
TZIPFile::kDIR_COMMENTLEN_OFF
@ kDIR_COMMENTLEN_OFF
Definition: TZIPFile.h:66
TZIPFile::kDIR_VMADE_LEN
@ kDIR_VMADE_LEN
Definition: TZIPFile.h:56
TZIPFile::Print
void Print(Option_t *option="") const
Pretty print ZIP archive members.
Definition: TZIPFile.cxx:557
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
TZIPFile::kZIP64_EXTENDED_SIZE_OFF
@ kZIP64_EXTENDED_SIZE_OFF
Definition: TZIPFile.h:119
name
char name[80]
Definition: TGX11.cxx:110
TZIPFile::kEND_DISK_HDRS_LEN
@ kEND_DISK_HDRS_LEN
Definition: TZIPFile.h:97
TZIPFile::kDIR_HEADER_MAGIC
@ kDIR_HEADER_MAGIC
Definition: TZIPFile.h:44
TZIPFile
Describes a ZIP archive file containing multiple sub-files.
Definition: TZIPFile.h:20
TZIPFile::kENTRY_METHOD_LEN
@ kENTRY_METHOD_LEN
Definition: TZIPFile.h:108
TZIPFile::kENTRY_CRC32_OFF
@ kENTRY_CRC32_OFF
Definition: TZIPFile.h:110
TZIPFile::OpenArchive
virtual Int_t OpenArchive()
Open archive and read end-header and directory.
Definition: TZIPFile.cxx:88
TZIPFile::kEND_DIR_DISK_OFF
@ kEND_DIR_DISK_OFF
Definition: TZIPFile.h:96
TZIPFile::TZIPFile
TZIPFile()
Default ctor.
Definition: TZIPFile.cxx:65
TZIPMember::GetAttrExt
UInt_t GetAttrExt() const
Definition: TZIPFile.h:184
TZIPFile::~TZIPFile
virtual ~TZIPFile()
Definition: TZIPFile.h:137
TZIPFile::kDIR_USIZE_OFF
@ kDIR_USIZE_OFF
Definition: TZIPFile.h:63
TZIPFile::kDIR_ENTRY_POS_OFF
@ kDIR_ENTRY_POS_OFF
Definition: TZIPFile.h:70
TZIPFile::kZIP64_EXTENDED_HDR_OFFSET_LEN
@ kZIP64_EXTENDED_HDR_OFFSET_LEN
Definition: TZIPFile.h:122
TZIPFile::kDIR_FLAG_LEN
@ kDIR_FLAG_LEN
Definition: TZIPFile.h:58
TZIPFile::DecodeZip64ExtendedExtraField
Int_t DecodeZip64ExtendedExtraField(TZIPMember *m, Bool_t global=kTRUE)
Decode the Zip64 extended extra field.
Definition: TZIPFile.cxx:441
TZIPMember::GetLevel
UInt_t GetLevel() const
Definition: TZIPFile.h:186
TZIPFile::kARCHIVE_VERSION
@ kARCHIVE_VERSION
Definition: TZIPFile.h:41
TZIPFile::kZIP64_EDR_SIZE_LEN
@ kZIP64_EDR_SIZE_LEN
Definition: TZIPFile.h:75
TZIPFile::kENTRY_CSIZE_LEN
@ kENTRY_CSIZE_LEN
Definition: TZIPFile.h:111
TZIPFile::kDEFLATED
@ kDEFLATED
Stored using deflate.
Definition: TZIPFile.h:128
TZIPFile::kENTRY_USIZE_LEN
@ kENTRY_USIZE_LEN
Definition: TZIPFile.h:112
TZIPFile::kZIP64_EDR_DISK_HDRS_LEN
@ kZIP64_EDR_DISK_HDRS_LEN
Definition: TZIPFile.h:80
TZIPFile::kZIP64_EXTENDED_USIZE_OFF
@ kZIP64_EXTENDED_USIZE_OFF
Definition: TZIPFile.h:120
int
TZIPFile::kZIP64_EDR_TOTAL_HDRS_LEN
@ kZIP64_EDR_TOTAL_HDRS_LEN
Definition: TZIPFile.h:81
TZIPFile::kZIP64_EDR_DIR_OFFSET_OFF
@ kZIP64_EDR_DIR_OFFSET_OFF
Definition: TZIPFile.h:83