Mercurial > vba-linux
comparison 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 |
comparison
equal
deleted
inserted
replaced
0:8ced16adf2e1 | 1:f9f4f1b99eed |
---|---|
1 // RarVolumeInStream.h | |
2 | |
3 #ifndef __RAR_VOLUME_IN_STREAM_H | |
4 #define __RAR_VOLUME_IN_STREAM_H | |
5 | |
6 #include "../../IStream.h" | |
7 #include "RarIn.h" | |
8 | |
9 namespace NArchive { | |
10 namespace NRar { | |
11 | |
12 struct CRefItem | |
13 { | |
14 int VolumeIndex; | |
15 int ItemIndex; | |
16 int NumItems; | |
17 }; | |
18 | |
19 class CFolderInStream: | |
20 public ISequentialInStream, | |
21 public CMyUnknownImp | |
22 { | |
23 public: | |
24 MY_UNKNOWN_IMP | |
25 | |
26 STDMETHOD(Read)(void *data, UInt32 size, UInt32 *processedSize); | |
27 | |
28 private: | |
29 CObjectVector<CInArchive> *_archives; | |
30 const CObjectVector<CItemEx> *_items; | |
31 CRefItem _refItem; | |
32 int _curIndex; | |
33 UInt32 _crc; | |
34 bool _fileIsOpen; | |
35 CMyComPtr<ISequentialInStream> _stream; | |
36 | |
37 HRESULT OpenStream(); | |
38 HRESULT CloseStream(); | |
39 public: | |
40 void Init(CObjectVector<CInArchive> *archives, | |
41 const CObjectVector<CItemEx> *items, | |
42 const CRefItem &refItem); | |
43 | |
44 CRecordVector<UInt32> CRCs; | |
45 }; | |
46 | |
47 }} | |
48 | |
49 #endif |