3 #ifndef __LZX_86_CONVERTER_H
\r
4 #define __LZX_86_CONVERTER_H
\r
6 #include "../../Common/MyCom.h"
\r
8 #include "../IStream.h"
\r
10 namespace NCompress {
\r
13 const int kUncompressedBlockSize = 1 << 15;
\r
15 class Cx86ConvertOutStream:
\r
16 public ISequentialOutStream,
\r
17 public CMyUnknownImp
\r
19 CMyComPtr<ISequentialOutStream> m_Stream;
\r
20 UInt32 m_ProcessedSize;
\r
22 UInt32 m_TranslationSize;
\r
23 bool m_TranslationMode;
\r
24 Byte m_Buffer[kUncompressedBlockSize];
\r
26 void MakeTranslation();
\r
28 void SetStream(ISequentialOutStream *outStream) { m_Stream = outStream; }
\r
29 void ReleaseStream() { m_Stream.Release(); }
\r
30 void Init(bool translationMode, UInt32 translationSize)
\r
32 m_TranslationMode = translationMode;
\r
33 m_TranslationSize = translationSize;
\r
34 m_ProcessedSize = 0;
\r
41 STDMETHOD(Write)(const void *data, UInt32 size, UInt32 *processedSize);
\r