summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/lzma/CPP/7zip/Archive/Common/HandlerOut.h
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/lzma/CPP/7zip/Archive/Common/HandlerOut.h')
-rw-r--r--3rdparty/lzma/CPP/7zip/Archive/Common/HandlerOut.h65
1 files changed, 65 insertions, 0 deletions
diff --git a/3rdparty/lzma/CPP/7zip/Archive/Common/HandlerOut.h b/3rdparty/lzma/CPP/7zip/Archive/Common/HandlerOut.h
new file mode 100644
index 00000000000..d3c9a237ddc
--- /dev/null
+++ b/3rdparty/lzma/CPP/7zip/Archive/Common/HandlerOut.h
@@ -0,0 +1,65 @@
+// HandlerOut.h
+
+#ifndef __HANDLER_OUT_H
+#define __HANDLER_OUT_H
+
+#include "../../Common/MethodProps.h"
+
+namespace NArchive {
+
+class CMultiMethodProps
+{
+ UInt32 _level;
+public:
+ #ifndef _7ZIP_ST
+ UInt32 _numThreads;
+ UInt32 _numProcessors;
+ #endif
+
+ UInt32 _crcSize;
+ CObjectVector<COneMethodInfo> _methods;
+ COneMethodInfo _filterMethod;
+ bool _autoFilter;
+
+ void SetGlobalLevelAndThreads(COneMethodInfo &oneMethodInfo
+ #ifndef _7ZIP_ST
+ , UInt32 numThreads
+ #endif
+ );
+
+ int GetNumEmptyMethods() const
+ {
+ int i;
+ for (i = 0; i < _methods.Size(); i++)
+ if (!_methods[i].IsEmpty())
+ break;
+ return i;
+ }
+
+ int GetLevel() const { return _level == (UInt32)(UInt32)-1 ? 5 : (int)_level; }
+
+ void Init();
+
+ CMultiMethodProps() { Init(); }
+ HRESULT SetProperty(const wchar_t *name, const PROPVARIANT &value);
+};
+
+class CSingleMethodProps: public CMethodProps
+{
+ UInt32 _level;
+
+ void Init();
+public:
+ #ifndef _7ZIP_ST
+ UInt32 _numThreads;
+ UInt32 _numProcessors;
+ #endif
+
+ CSingleMethodProps() { Init(); }
+ int GetLevel() const { return _level == (UInt32)(UInt32)-1 ? 5 : (int)_level; }
+ HRESULT SetProperties(const wchar_t **names, const PROPVARIANT *values, Int32 numProps);
+};
+
+}
+
+#endif