6 #include "../../ICoder.h"
7 #include "../IArchive.h"
10 #include "7zCompressionMode.h"
12 #include "../../Common/CreateCoder.h"
15 #include "../Common/HandlerOut.h"
31 CMyComPtr<IInStream> Stream;
32 CArchiveDatabaseEx Database;
36 #ifndef __7Z_SET_PROPERTIES
40 #define __7Z_SET_PROPERTIES
43 #define __7Z_SET_PROPERTIES
51 public NArchive::COutHandler,
55 public IInArchiveGetStream,
57 #ifdef __7Z_SET_PROPERTIES
58 public ISetProperties,
63 PUBLIC_ISetCompressCodecsInfo
67 MY_QUERYINTERFACE_BEGIN2(IInArchive)
69 MY_QUERYINTERFACE_ENTRY(IInArchiveGetStream)
71 #ifdef __7Z_SET_PROPERTIES
72 MY_QUERYINTERFACE_ENTRY(ISetProperties)
75 MY_QUERYINTERFACE_ENTRY(IOutArchive)
77 QUERY_ENTRY_ISetCompressCodecsInfo
81 INTERFACE_IInArchive(;)
84 STDMETHOD(GetStream)(UInt32 index, ISequentialInStream **stream);
87 #ifdef __7Z_SET_PROPERTIES
88 STDMETHOD(SetProperties)(const wchar_t **names, const PROPVARIANT *values, Int32 numProperties);
92 INTERFACE_IOutArchive(;)
95 DECL_ISetCompressCodecsInfo
101 CObjectVector<CVolume> _volumes;
102 CObjectVector<CRef> _refs;
104 CMyComPtr<IInStream> _inStream;
105 NArchive::N7z::CArchiveDatabaseEx _database;
118 CRecordVector<CBind> _binds;
120 HRESULT SetPassword(CCompressionMethodMode &methodMode, IArchiveUpdateCallback *updateCallback);
122 HRESULT SetCompressionMethod(CCompressionMethodMode &method,
123 CObjectVector<COneMethodInfo> &methodsInfo
129 HRESULT SetCompressionMethod(
130 CCompressionMethodMode &method,
131 CCompressionMethodMode &headerMethod);
135 bool IsEncrypted(UInt32 index2) const;
138 CRecordVector<UInt64> _fileInfoPopIDs;