diff options
Diffstat (limited to 'CPP/7zip/Compress/XzEncoder.h')
-rw-r--r-- | CPP/7zip/Compress/XzEncoder.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/CPP/7zip/Compress/XzEncoder.h b/CPP/7zip/Compress/XzEncoder.h new file mode 100644 index 0000000..ea5190e --- /dev/null +++ b/CPP/7zip/Compress/XzEncoder.h | |||
@@ -0,0 +1,46 @@ | |||
1 | // XzEncoder.h | ||
2 | |||
3 | #ifndef __XZ_ENCODER_H | ||
4 | #define __XZ_ENCODER_H | ||
5 | |||
6 | #include "../../../C/XzEnc.h" | ||
7 | |||
8 | #include "../../Common/MyCom.h" | ||
9 | |||
10 | #include "../ICoder.h" | ||
11 | |||
12 | namespace NCompress { | ||
13 | namespace NXz { | ||
14 | |||
15 | |||
16 | class CEncoder: | ||
17 | public ICompressCoder, | ||
18 | public ICompressSetCoderProperties, | ||
19 | public ICompressSetCoderPropertiesOpt, | ||
20 | public CMyUnknownImp | ||
21 | { | ||
22 | CXzEncHandle _encoder; | ||
23 | public: | ||
24 | CXzProps xzProps; | ||
25 | |||
26 | MY_UNKNOWN_IMP3( | ||
27 | ICompressCoder, | ||
28 | ICompressSetCoderProperties, | ||
29 | ICompressSetCoderPropertiesOpt) | ||
30 | |||
31 | void InitCoderProps(); | ||
32 | HRESULT SetCheckSize(UInt32 checkSizeInBytes); | ||
33 | HRESULT SetCoderProp(PROPID propID, const PROPVARIANT &prop); | ||
34 | |||
35 | STDMETHOD(Code)(ISequentialInStream *inStream, ISequentialOutStream *outStream, | ||
36 | const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress); | ||
37 | STDMETHOD(SetCoderProperties)(const PROPID *propIDs, const PROPVARIANT *props, UInt32 numProps); | ||
38 | STDMETHOD(SetCoderPropertiesOpt)(const PROPID *propIDs, const PROPVARIANT *props, UInt32 numProps); | ||
39 | |||
40 | CEncoder(); | ||
41 | virtual ~CEncoder(); | ||
42 | }; | ||
43 | |||
44 | }} | ||
45 | |||
46 | #endif | ||