Mercurial > vba-linux
annotate src/win32/7zip/7z/CPP/7zip/Archive/BZip2/BZip2Handler.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 // BZip2/Handler.h |
rlm@1 | 2 |
rlm@1 | 3 #ifndef __BZIP2_HANDLER_H |
rlm@1 | 4 #define __BZIP2_HANDLER_H |
rlm@1 | 5 |
rlm@1 | 6 #include "Common/MyCom.h" |
rlm@1 | 7 #include "../IArchive.h" |
rlm@1 | 8 #include "../../Common/CreateCoder.h" |
rlm@1 | 9 #include "BZip2Item.h" |
rlm@1 | 10 |
rlm@1 | 11 #ifdef COMPRESS_MT |
rlm@1 | 12 #include "../../../Windows/System.h" |
rlm@1 | 13 #endif |
rlm@1 | 14 |
rlm@1 | 15 namespace NArchive { |
rlm@1 | 16 namespace NBZip2 { |
rlm@1 | 17 |
rlm@1 | 18 class CHandler: |
rlm@1 | 19 public IInArchive, |
rlm@1 | 20 public IOutArchive, |
rlm@1 | 21 public ISetProperties, |
rlm@1 | 22 PUBLIC_ISetCompressCodecsInfo |
rlm@1 | 23 public CMyUnknownImp |
rlm@1 | 24 { |
rlm@1 | 25 CMyComPtr<IInStream> _stream; |
rlm@1 | 26 NArchive::NBZip2::CItem _item; |
rlm@1 | 27 UInt64 _streamStartPosition; |
rlm@1 | 28 |
rlm@1 | 29 UInt32 _level; |
rlm@1 | 30 UInt32 _dicSize; |
rlm@1 | 31 UInt32 _numPasses; |
rlm@1 | 32 #ifdef COMPRESS_MT |
rlm@1 | 33 UInt32 _numThreads; |
rlm@1 | 34 #endif |
rlm@1 | 35 |
rlm@1 | 36 DECL_EXTERNAL_CODECS_VARS |
rlm@1 | 37 |
rlm@1 | 38 void InitMethodProperties() |
rlm@1 | 39 { |
rlm@1 | 40 _level = 5; |
rlm@1 | 41 _dicSize = |
rlm@1 | 42 _numPasses = 0xFFFFFFFF; |
rlm@1 | 43 #ifdef COMPRESS_MT |
rlm@1 | 44 _numThreads = NWindows::NSystem::GetNumberOfProcessors();; |
rlm@1 | 45 #endif |
rlm@1 | 46 } |
rlm@1 | 47 |
rlm@1 | 48 public: |
rlm@1 | 49 MY_QUERYINTERFACE_BEGIN2(IInArchive) |
rlm@1 | 50 MY_QUERYINTERFACE_ENTRY(IOutArchive) |
rlm@1 | 51 MY_QUERYINTERFACE_ENTRY(ISetProperties) |
rlm@1 | 52 QUERY_ENTRY_ISetCompressCodecsInfo |
rlm@1 | 53 MY_QUERYINTERFACE_END |
rlm@1 | 54 MY_ADDREF_RELEASE |
rlm@1 | 55 |
rlm@1 | 56 INTERFACE_IInArchive(;) |
rlm@1 | 57 #ifndef EXTRACT_ONLY |
rlm@1 | 58 INTERFACE_IOutArchive(;) |
rlm@1 | 59 |
rlm@1 | 60 STDMETHOD(SetProperties)(const wchar_t **names, const PROPVARIANT *values, Int32 numProperties); |
rlm@1 | 61 #endif |
rlm@1 | 62 |
rlm@1 | 63 DECL_ISetCompressCodecsInfo |
rlm@1 | 64 |
rlm@1 | 65 CHandler() { InitMethodProperties(); } |
rlm@1 | 66 }; |
rlm@1 | 67 |
rlm@1 | 68 }} |
rlm@1 | 69 |
rlm@1 | 70 #endif |