Index: third_party/lzma/v4_65/files/CPP/7zip/UI/Common/LoadCodecs.h |
diff --git a/third_party/lzma/v4_65/files/CPP/7zip/UI/Common/LoadCodecs.h b/third_party/lzma/v4_65/files/CPP/7zip/UI/Common/LoadCodecs.h |
deleted file mode 100644 |
index 71de2ff1ed58d3fb866c6dd4bdbc5d0b5eae7082..0000000000000000000000000000000000000000 |
--- a/third_party/lzma/v4_65/files/CPP/7zip/UI/Common/LoadCodecs.h |
+++ /dev/null |
@@ -1,220 +0,0 @@ |
-// LoadCodecs.h |
- |
-#ifndef __LOADCODECS_H |
-#define __LOADCODECS_H |
- |
-#include "../../../Common/Types.h" |
-#include "../../../Common/MyCom.h" |
-#include "../../../Common/MyString.h" |
-#include "../../../Common/Buffer.h" |
-#include "../../ICoder.h" |
- |
-#ifdef EXTERNAL_CODECS |
-#include "../../../Windows/DLL.h" |
-#endif |
- |
-struct CDllCodecInfo |
-{ |
- CLSID Encoder; |
- CLSID Decoder; |
- bool EncoderIsAssigned; |
- bool DecoderIsAssigned; |
- int LibIndex; |
- UInt32 CodecIndex; |
-}; |
- |
-#include "../../Archive/IArchive.h" |
- |
-typedef IInArchive * (*CreateInArchiveP)(); |
-typedef IOutArchive * (*CreateOutArchiveP)(); |
- |
-struct CArcExtInfo |
-{ |
- UString Ext; |
- UString AddExt; |
- CArcExtInfo() {} |
- CArcExtInfo(const UString &ext): Ext(ext) {} |
- CArcExtInfo(const UString &ext, const UString &addExt): Ext(ext), AddExt(addExt) {} |
-}; |
- |
- |
-struct CArcInfoEx |
-{ |
- #ifdef EXTERNAL_CODECS |
- int LibIndex; |
- UInt32 FormatIndex; |
- CLSID ClassID; |
- #endif |
- bool UpdateEnabled; |
- CreateInArchiveP CreateInArchive; |
- CreateOutArchiveP CreateOutArchive; |
- UString Name; |
- CObjectVector<CArcExtInfo> Exts; |
- #ifndef _SFX |
- CByteBuffer StartSignature; |
- // CByteBuffer FinishSignature; |
- #ifdef NEW_FOLDER_INTERFACE |
- UStringVector AssociateExts; |
- #endif |
- #endif |
- bool KeepName; |
- UString GetMainExt() const |
- { |
- if (Exts.IsEmpty()) |
- return UString(); |
- return Exts[0].Ext; |
- } |
- int FindExtension(const UString &ext) const |
- { |
- for (int i = 0; i < Exts.Size(); i++) |
- if (ext.CompareNoCase(Exts[i].Ext) == 0) |
- return i; |
- return -1; |
- } |
- UString GetAllExtensions() const |
- { |
- UString s; |
- for (int i = 0; i < Exts.Size(); i++) |
- { |
- if (i > 0) |
- s += ' '; |
- s += Exts[i].Ext; |
- } |
- return s; |
- } |
- |
- void AddExts(const wchar_t* ext, const wchar_t* addExt); |
- |
- CArcInfoEx(): |
- #ifdef EXTERNAL_CODECS |
- LibIndex(-1), |
- #endif |
- UpdateEnabled(false), |
- CreateInArchive(0), CreateOutArchive(0), |
- KeepName(false) |
- #ifndef _SFX |
- #endif |
- {} |
-}; |
- |
-#ifdef EXTERNAL_CODECS |
-typedef UInt32 (WINAPI *GetMethodPropertyFunc)(UInt32 index, PROPID propID, PROPVARIANT *value); |
-typedef UInt32 (WINAPI *CreateObjectFunc)(const GUID *clsID, const GUID *interfaceID, void **outObject); |
- |
- |
-struct CCodecLib |
-{ |
- NWindows::NDLL::CLibrary Lib; |
- GetMethodPropertyFunc GetMethodProperty; |
- CreateObjectFunc CreateObject; |
- #ifdef NEW_FOLDER_INTERFACE |
- struct CIconPair |
- { |
- UString Ext; |
- UInt32 IconIndex; |
- }; |
- CSysString Path; |
- CObjectVector<CIconPair> IconPairs; |
- void LoadIcons(); |
- int FindIconIndex(const UString &ext) const; |
- #endif |
- CCodecLib(): GetMethodProperty(0) {} |
-}; |
-#endif |
- |
-class CCodecs: |
- #ifdef EXTERNAL_CODECS |
- public ICompressCodecsInfo, |
- #else |
- public IUnknown, |
- #endif |
- public CMyUnknownImp |
-{ |
-public: |
- #ifdef EXTERNAL_CODECS |
- CObjectVector<CCodecLib> Libs; |
- CObjectVector<CDllCodecInfo> Codecs; |
- HRESULT LoadCodecs(); |
- HRESULT LoadFormats(); |
- HRESULT LoadDll(const CSysString &path); |
- HRESULT LoadDllsFromFolder(const CSysString &folderPrefix); |
- |
- HRESULT CreateArchiveHandler(const CArcInfoEx &ai, void **archive, bool outHandler) const |
- { |
- return Libs[ai.LibIndex].CreateObject(&ai.ClassID, outHandler ? &IID_IOutArchive : &IID_IInArchive, (void **)archive); |
- } |
- #endif |
- |
-public: |
- CObjectVector<CArcInfoEx> Formats; |
- HRESULT Load(); |
- |
- #ifndef _SFX |
- int FindFormatForArchiveName(const UString &arcPath) const; |
- int FindFormatForExtension(const UString &ext) const; |
- int FindFormatForArchiveType(const UString &arcType) const; |
- bool FindFormatForArchiveType(const UString &arcType, CIntVector &formatIndices) const; |
- #endif |
- |
- MY_UNKNOWN_IMP |
- |
- #ifdef EXTERNAL_CODECS |
- STDMETHOD(GetNumberOfMethods)(UInt32 *numMethods); |
- STDMETHOD(GetProperty)(UInt32 index, PROPID propID, PROPVARIANT *value); |
- STDMETHOD(CreateDecoder)(UInt32 index, const GUID *interfaceID, void **coder); |
- STDMETHOD(CreateEncoder)(UInt32 index, const GUID *interfaceID, void **coder); |
- #endif |
- |
- int GetCodecLibIndex(UInt32 index); |
- bool GetCodecEncoderIsAssigned(UInt32 index); |
- HRESULT GetCodecId(UInt32 index, UInt64 &id); |
- UString GetCodecName(UInt32 index); |
- |
- HRESULT CreateInArchive(int formatIndex, CMyComPtr<IInArchive> &archive) const |
- { |
- const CArcInfoEx &ai = Formats[formatIndex]; |
- #ifdef EXTERNAL_CODECS |
- if (ai.LibIndex < 0) |
- #endif |
- { |
- archive = ai.CreateInArchive(); |
- return S_OK; |
- } |
- #ifdef EXTERNAL_CODECS |
- return CreateArchiveHandler(ai, (void **)&archive, false); |
- #endif |
- } |
- HRESULT CreateOutArchive(int formatIndex, CMyComPtr<IOutArchive> &archive) const |
- { |
- const CArcInfoEx &ai = Formats[formatIndex]; |
- #ifdef EXTERNAL_CODECS |
- if (ai.LibIndex < 0) |
- #endif |
- { |
- archive = ai.CreateOutArchive(); |
- return S_OK; |
- } |
- #ifdef EXTERNAL_CODECS |
- return CreateArchiveHandler(ai, (void **)&archive, true); |
- #endif |
- } |
- int FindOutFormatFromName(const UString &name) const |
- { |
- for (int i = 0; i < Formats.Size(); i++) |
- { |
- const CArcInfoEx &arc = Formats[i]; |
- if (!arc.UpdateEnabled) |
- continue; |
- if (arc.Name.CompareNoCase(name) == 0) |
- return i; |
- } |
- return -1; |
- } |
- |
- #ifdef EXTERNAL_CODECS |
- HRESULT CreateCoder(const UString &name, bool encode, CMyComPtr<ICompressCoder> &coder) const; |
- #endif |
- |
-}; |
- |
-#endif |