diff options
Diffstat (limited to 'src/libs/7zip/win/CPP/7zip/Archive/Nsis/NsisHandler.h')
-rw-r--r-- | src/libs/7zip/win/CPP/7zip/Archive/Nsis/NsisHandler.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/libs/7zip/win/CPP/7zip/Archive/Nsis/NsisHandler.h b/src/libs/7zip/win/CPP/7zip/Archive/Nsis/NsisHandler.h new file mode 100644 index 000000000..6de493df8 --- /dev/null +++ b/src/libs/7zip/win/CPP/7zip/Archive/Nsis/NsisHandler.h @@ -0,0 +1,43 @@ +// NSisHandler.h + +#ifndef __NSIS_HANDLER_H +#define __NSIS_HANDLER_H + +#include "Common/MyCom.h" +#include "../IArchive.h" + +#include "NsisIn.h" + +#include "../../Common/CreateCoder.h" + +namespace NArchive { +namespace NNsis { + +class CHandler: + public IInArchive, + PUBLIC_ISetCompressCodecsInfo + public CMyUnknownImp +{ + CMyComPtr<IInStream> _inStream; + CInArchive _archive; + + DECL_EXTERNAL_CODECS_VARS + + bool GetUncompressedSize(int index, UInt32 &size); + bool GetCompressedSize(int index, UInt32 &size); + + AString GetMethod(bool useItemFilter, UInt32 dictionary) const; +public: + MY_QUERYINTERFACE_BEGIN2(IInArchive) + QUERY_ENTRY_ISetCompressCodecsInfo + MY_QUERYINTERFACE_END + MY_ADDREF_RELEASE + + INTERFACE_IInArchive(;) + + DECL_ISetCompressCodecsInfo +}; + +}} + +#endif |