Mercurial > vba-linux
annotate src/win32/7zip/7z/CPP/7zip/Archive/7z/7zCompressionMode.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 // 7zCompressionMode.h |
rlm@1 | 2 |
rlm@1 | 3 #ifndef __7Z_COMPRESSION_MODE_H |
rlm@1 | 4 #define __7Z_COMPRESSION_MODE_H |
rlm@1 | 5 |
rlm@1 | 6 #include "../../../Common/MyString.h" |
rlm@1 | 7 |
rlm@1 | 8 #include "../../../Windows/PropVariant.h" |
rlm@1 | 9 |
rlm@1 | 10 #include "../../Common/MethodProps.h" |
rlm@1 | 11 |
rlm@1 | 12 namespace NArchive { |
rlm@1 | 13 namespace N7z { |
rlm@1 | 14 |
rlm@1 | 15 struct CMethodFull: public CMethod |
rlm@1 | 16 { |
rlm@1 | 17 UInt32 NumInStreams; |
rlm@1 | 18 UInt32 NumOutStreams; |
rlm@1 | 19 bool IsSimpleCoder() const { return (NumInStreams == 1) && (NumOutStreams == 1); } |
rlm@1 | 20 }; |
rlm@1 | 21 |
rlm@1 | 22 struct CBind |
rlm@1 | 23 { |
rlm@1 | 24 UInt32 InCoder; |
rlm@1 | 25 UInt32 InStream; |
rlm@1 | 26 UInt32 OutCoder; |
rlm@1 | 27 UInt32 OutStream; |
rlm@1 | 28 }; |
rlm@1 | 29 |
rlm@1 | 30 struct CCompressionMethodMode |
rlm@1 | 31 { |
rlm@1 | 32 CObjectVector<CMethodFull> Methods; |
rlm@1 | 33 CRecordVector<CBind> Binds; |
rlm@1 | 34 #ifdef COMPRESS_MT |
rlm@1 | 35 UInt32 NumThreads; |
rlm@1 | 36 #endif |
rlm@1 | 37 bool PasswordIsDefined; |
rlm@1 | 38 UString Password; |
rlm@1 | 39 |
rlm@1 | 40 bool IsEmpty() const { return (Methods.IsEmpty() && !PasswordIsDefined); } |
rlm@1 | 41 CCompressionMethodMode(): PasswordIsDefined(false) |
rlm@1 | 42 #ifdef COMPRESS_MT |
rlm@1 | 43 , NumThreads(1) |
rlm@1 | 44 #endif |
rlm@1 | 45 {} |
rlm@1 | 46 }; |
rlm@1 | 47 |
rlm@1 | 48 }} |
rlm@1 | 49 |
rlm@1 | 50 #endif |