Mercurial > vba-linux
annotate src/win32/7zip/7z/CPP/7zip/Archive/Rar/RarVolumeInStream.h @ 1:f9f4f1b99eed
importing src directory
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:27 -0600 |
parents | |
children |
rev | line source |
---|---|
rlm@1 | 1 // RarVolumeInStream.h |
rlm@1 | 2 |
rlm@1 | 3 #ifndef __RAR_VOLUME_IN_STREAM_H |
rlm@1 | 4 #define __RAR_VOLUME_IN_STREAM_H |
rlm@1 | 5 |
rlm@1 | 6 #include "../../IStream.h" |
rlm@1 | 7 #include "RarIn.h" |
rlm@1 | 8 |
rlm@1 | 9 namespace NArchive { |
rlm@1 | 10 namespace NRar { |
rlm@1 | 11 |
rlm@1 | 12 struct CRefItem |
rlm@1 | 13 { |
rlm@1 | 14 int VolumeIndex; |
rlm@1 | 15 int ItemIndex; |
rlm@1 | 16 int NumItems; |
rlm@1 | 17 }; |
rlm@1 | 18 |
rlm@1 | 19 class CFolderInStream: |
rlm@1 | 20 public ISequentialInStream, |
rlm@1 | 21 public CMyUnknownImp |
rlm@1 | 22 { |
rlm@1 | 23 public: |
rlm@1 | 24 MY_UNKNOWN_IMP |
rlm@1 | 25 |
rlm@1 | 26 STDMETHOD(Read)(void *data, UInt32 size, UInt32 *processedSize); |
rlm@1 | 27 |
rlm@1 | 28 private: |
rlm@1 | 29 CObjectVector<CInArchive> *_archives; |
rlm@1 | 30 const CObjectVector<CItemEx> *_items; |
rlm@1 | 31 CRefItem _refItem; |
rlm@1 | 32 int _curIndex; |
rlm@1 | 33 UInt32 _crc; |
rlm@1 | 34 bool _fileIsOpen; |
rlm@1 | 35 CMyComPtr<ISequentialInStream> _stream; |
rlm@1 | 36 |
rlm@1 | 37 HRESULT OpenStream(); |
rlm@1 | 38 HRESULT CloseStream(); |
rlm@1 | 39 public: |
rlm@1 | 40 void Init(CObjectVector<CInArchive> *archives, |
rlm@1 | 41 const CObjectVector<CItemEx> *items, |
rlm@1 | 42 const CRefItem &refItem); |
rlm@1 | 43 |
rlm@1 | 44 CRecordVector<UInt32> CRCs; |
rlm@1 | 45 }; |
rlm@1 | 46 |
rlm@1 | 47 }} |
rlm@1 | 48 |
rlm@1 | 49 #endif |