Mercurial > vba-linux
view src/win32/7zip/7z/CPP/7zip/Archive/GZip/GZipHandler.h @ 1:f9f4f1b99eed
importing src directory
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:27 -0600 |
parents | |
children |
line wrap: on
line source
1 // GZip/Handler.h3 #ifndef __GZIP_HANDLER_H4 #define __GZIP_HANDLER_H6 #include "Common/MyCom.h"8 #include "../IArchive.h"10 #include "../../Common/CreateCoder.h"12 #include "GZipIn.h"13 #include "GZipUpdate.h"15 namespace NArchive {16 namespace NGZip {18 class CHandler:19 public IInArchive,20 public IOutArchive,21 public ISetProperties,22 PUBLIC_ISetCompressCodecsInfo23 public CMyUnknownImp24 {25 public:26 MY_QUERYINTERFACE_BEGIN2(IInArchive)27 MY_QUERYINTERFACE_ENTRY(IOutArchive)28 MY_QUERYINTERFACE_ENTRY(ISetProperties)29 QUERY_ENTRY_ISetCompressCodecsInfo30 MY_QUERYINTERFACE_END31 MY_ADDREF_RELEASE33 INTERFACE_IInArchive(;)34 #ifndef EXTRACT_ONLY35 INTERFACE_IOutArchive(;)37 STDMETHOD(SetProperties)(const wchar_t **names, const PROPVARIANT *values, Int32 numProperties);38 #endif40 DECL_ISetCompressCodecsInfo42 CHandler() { InitMethodProperties(); }44 private:45 NArchive::NGZip::CItem m_Item;46 UInt64 m_StreamStartPosition;47 UInt64 m_DataOffset;48 UInt64 m_PackSize;49 CMyComPtr<IInStream> m_Stream;50 CCompressionMethodMode m_Method;51 UInt32 m_Level;53 DECL_EXTERNAL_CODECS_VARS55 void InitMethodProperties()56 {57 m_Method.NumMatchFinderCyclesDefined = false;58 m_Level = m_Method.NumPasses = m_Method.NumFastBytes =59 m_Method.NumMatchFinderCycles = m_Method.Algo = 0xFFFFFFFF;60 }61 };63 }}65 #endif