| author | Peter Fordham <peter.fordham@gmail.com> | 
| Mon, 22 Mar 2010 12:57:04 -0700 | |
| branch | CompilerCompatibility | 
| changeset 13 | ef48f5dc1b7f | 
| parent 0 | e4d67989cc36 | 
| permissions | -rw-r--r-- | 
| 0 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | // All rights reserved. | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | // This component and the accompanying materials are made available | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | // under the terms of "Eclipse Public License v1.0" | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | // which accompanies this distribution, and is available | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | // at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | // | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | // Initial Contributors: | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | // Nokia Corporation - initial contribution. | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | // | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | // Contributors: | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | // | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | // Description: | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | // ziparchive.h | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | // $Revision: 1.1 $ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | // | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | // | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | #ifndef _EZIP_ARCHIVE_H_ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #define _EZIP_ARCHIVE_H_ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | #include "localtypes.h" | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | /** | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | This class represents a zip archive | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | @publishedAll | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | @released | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | */ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | namespace TOLDEZIP | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | {
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | class CZipArchive: public CBase | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | 	{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | public: | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | enum | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | 		{	
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | KZipArchiveError = -256, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | KCentralDirectoryTrailerNotFound = KZipArchiveError - 1, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | KCentralDirectoryTrailerInvalid = KZipArchiveError - 3, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | KCompressionMethodNotSupported = KZipArchiveError - 4, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | KLocalHeaderSignatureInvalid = KZipArchiveError - 5, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | KMultiDiskArchivesNotSupported = KZipArchiveError - 6, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | KMemberNotFound = KZipArchiveError - 7, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | KZipArchiveMinError = KZipArchiveError - 8 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | enum TCompressionMethod | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | EStored = 0, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | EShrunk = 1, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | EReducedCFOne = 2, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | EReducedCFTwo = 3, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | EReducedCFThree = 4, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | EReducedCFFour = 5, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | EImploded = 6, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | EReservedOne = 7, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | EDeflated = 8, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 | EReservedTwo = 9, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | EPKWAREImploded = 10 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | protected: | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | enum // Constants | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | KCentralDirectorySignature = 0x06054b50, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | KCentralDirectoryHeaderSignature = 0x02014b50, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | KLocalHeaderSignature = 0x04034b50 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | enum // Lengths | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | KCentralDirectoryTrailerFixedLength = 22, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | KLocalHeaderFixedLength = 30, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 | KCentralDirectoryHeaderFixedLength = 46, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | KSignatureLength = 4, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 | KMaxTrailerSearchLength = 65536 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | enum // Offsets | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 89 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | KCentralFileHeaderFileNameLengthOffset = 28, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 91 | KCentralFileHeaderExtraFieldLengthOffset = 30, | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 92 | KCentralFileHeaderFileNameOffset = 46 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | /** | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | Represents the archive's central directory trailer - the central directory contains information | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | about files in the arhive | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 99 | @publishedAll | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 100 | @released | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 101 | */ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 102 | struct TCentralDirectoryTrailer | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 103 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 104 | TUint32 iSignature; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 | TUint16 iDiskNumber; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | TUint16 iStartDiskNumber; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | TUint16 iLocalEntryCount; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 108 | TUint16 iTotalEntryCount; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 109 | TUint32 iSize; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 110 | TUint32 iOffset; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 111 | TUint16 iCommentLength; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 112 | // comment -- variable length | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 113 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 114 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 115 | /** | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 116 | Represents the archive's central directory header - the central directory contains information | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 117 | about files in the arhive | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 118 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 119 | @publishedAll | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 120 | @released | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 121 | */ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 122 | struct TCentralDirectoryHeader | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 123 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 124 | TUint32 iSignature; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 125 | TUint16 iMadeBy; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 126 | TUint16 iRequired; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 127 | TUint16 iFlags; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 128 | TUint16 iCompressionMethod; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 129 | TUint16 iLastModifiedFileTime; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 130 | TUint16 iLastModifiedFileDate; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 131 | TUint32 iCRC32; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 132 | TUint32 iCompressedSize; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 133 | TUint32 iUncompressedSize; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 134 | TUint16 iFileNameLength; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 135 | TUint16 iExtraFieldLength; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 136 | TUint16 iFileCommentLength; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 137 | TUint16 iDiskNumberStart; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 138 | TUint16 iInternalFileAttributes; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 139 | TUint32 iExternalFileAttributes; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 140 | TUint32 iLocalHeaderOffset; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 141 | // file name -- variable length | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 142 | // extra field -- variable length | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 143 | // file comment -- variable length | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 144 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 145 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 146 | /** | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 147 | Represents the archive's local header | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 148 | |
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 149 | @publishedAll | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 150 | @released | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 151 | */ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 152 | struct TLocalHeader | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 153 | 		{
 | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 154 | TUint32 iSignature; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 155 | TUint16 iVersionNeeded; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 156 | TUint16 iFlags; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 157 | TUint16 iCompressionMethod; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 158 | TUint16 iLastModifiedFileTime; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 159 | TUint16 iLastModifiedFileDate; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 160 | TUint32 iCRC32; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 161 | TUint32 iCompressedSize; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 162 | TUint32 iUncompressedSize; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 163 | TUint16 iFileNameLength; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 164 | TUint16 iExtraFieldLength; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 165 | // file name -- variable length | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 166 | // extra field -- variable length | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 167 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 168 | }; | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 169 | }//TOLDEZIP | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 170 | #endif /* !_ZIP_ARCHIVE_H_ */ | 
| 
e4d67989cc36
Revision: 201002
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 171 |