3 #ifndef __ZIP_ADD_COMMON_H
\r
4 #define __ZIP_ADD_COMMON_H
\r
6 #include "../../ICoder.h"
\r
7 #include "../../IProgress.h"
\r
9 #include "../../Common/CreateCoder.h"
\r
10 #include "../../Common/FilterCoder.h"
\r
12 #include "../../Compress/CopyCoder.h"
\r
14 #include "../../Crypto/ZipCrypto.h"
\r
15 #include "../../Crypto/WzAes.h"
\r
17 #include "ZipCompressionMode.h"
\r
19 namespace NArchive {
\r
22 struct CCompressingResult
\r
28 Byte ExtractVersion;
\r
33 CCompressionMethodMode _options;
\r
34 NCompress::CCopyCoder *_copyCoderSpec;
\r
35 CMyComPtr<ICompressCoder> _copyCoder;
\r
37 CMyComPtr<ICompressCoder> _compressEncoder;
\r
38 Byte _compressExtractVersion;
\r
40 CFilterCoder *_cryptoStreamSpec;
\r
41 CMyComPtr<ISequentialOutStream> _cryptoStream;
\r
43 NCrypto::NZip::CEncoder *_filterSpec;
\r
44 NCrypto::NWzAes::CEncoder *_filterAesSpec;
\r
47 CAddCommon(const CCompressionMethodMode &options);
\r
49 DECL_EXTERNAL_CODECS_LOC_VARS
\r
50 ISequentialInStream *inStream, IOutStream *outStream,
\r
51 ICompressProgressInfo *progress, CCompressingResult &operationResult);
\r