Annotation of elwix/tools/oldlzma/SRC/7zip/Archive/7z_C/7zItem.h, revision 1.1
1.1 ! misho 1: /* 7zItem.h */
! 2:
! 3: #ifndef __7Z_ITEM_H
! 4: #define __7Z_ITEM_H
! 5:
! 6: #include "7zMethodID.h"
! 7: #include "7zHeader.h"
! 8: #include "7zBuffer.h"
! 9:
! 10: typedef struct _CCoderInfo
! 11: {
! 12: UInt32 NumInStreams;
! 13: UInt32 NumOutStreams;
! 14: CMethodID MethodID;
! 15: CSzByteBuffer Properties;
! 16: }CCoderInfo;
! 17:
! 18: void SzCoderInfoInit(CCoderInfo *coder);
! 19: void SzCoderInfoFree(CCoderInfo *coder, void (*freeFunc)(void *p));
! 20:
! 21: typedef struct _CBindPair
! 22: {
! 23: UInt32 InIndex;
! 24: UInt32 OutIndex;
! 25: }CBindPair;
! 26:
! 27: typedef struct _CFolder
! 28: {
! 29: UInt32 NumCoders;
! 30: CCoderInfo *Coders;
! 31: UInt32 NumBindPairs;
! 32: CBindPair *BindPairs;
! 33: UInt32 NumPackStreams;
! 34: UInt32 *PackStreams;
! 35: CFileSize *UnPackSizes;
! 36: int UnPackCRCDefined;
! 37: UInt32 UnPackCRC;
! 38:
! 39: UInt32 NumUnPackStreams;
! 40: }CFolder;
! 41:
! 42: void SzFolderInit(CFolder *folder);
! 43: CFileSize SzFolderGetUnPackSize(CFolder *folder);
! 44: int SzFolderFindBindPairForInStream(CFolder *folder, UInt32 inStreamIndex);
! 45: UInt32 SzFolderGetNumOutStreams(CFolder *folder);
! 46: CFileSize SzFolderGetUnPackSize(CFolder *folder);
! 47:
! 48: /* #define CArchiveFileTime UInt64 */
! 49:
! 50: typedef struct _CFileItem
! 51: {
! 52: /*
! 53: CArchiveFileTime LastWriteTime;
! 54: CFileSize StartPos;
! 55: UInt32 Attributes;
! 56: */
! 57: CFileSize Size;
! 58: UInt32 FileCRC;
! 59: char *Name;
! 60:
! 61: Byte IsFileCRCDefined;
! 62: Byte HasStream;
! 63: Byte IsDirectory;
! 64: Byte IsAnti;
! 65: /*
! 66: int AreAttributesDefined;
! 67: int IsLastWriteTimeDefined;
! 68: int IsStartPosDefined;
! 69: */
! 70: }CFileItem;
! 71:
! 72: void SzFileInit(CFileItem *fileItem);
! 73:
! 74: typedef struct _CArchiveDatabase
! 75: {
! 76: UInt32 NumPackStreams;
! 77: CFileSize *PackSizes;
! 78: int *PackCRCsDefined;
! 79: UInt32 *PackCRCs;
! 80: UInt32 NumFolders;
! 81: CFolder *Folders;
! 82: UInt32 NumFiles;
! 83: CFileItem *Files;
! 84: }CArchiveDatabase;
! 85:
! 86: void SzArchiveDatabaseInit(CArchiveDatabase *db);
! 87: void SzArchiveDatabaseFree(CArchiveDatabase *db, void (*freeFunc)(void *));
! 88:
! 89:
! 90: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>