1// MethodProps.h
2
3#ifndef __7Z_METHOD_PROPS_H
4#define __7Z_METHOD_PROPS_H
5
6#include "../../Common/MyVector.h"
7
8#include "../../Windows/PropVariant.h"
9
10#include "MethodId.h"
11
12struct CProp
13{
14  PROPID Id;
15  NWindows::NCOM::CPropVariant Value;
16};
17
18struct CMethod
19{
20  CMethodId Id;
21  CObjectVector<CProp> Props;
22};
23
24struct CMethodsMode
25{
26  CObjectVector<CMethod> Methods;
27  #ifndef _7ZIP_ST
28  UInt32 NumThreads;
29  #endif
30
31  CMethodsMode()
32      #ifndef _7ZIP_ST
33      : NumThreads(1)
34      #endif
35  {}
36  bool IsEmpty() const { return Methods.IsEmpty() ; }
37};
38
39HRESULT SetMethodProperties(const CMethod &method, const UInt64 *inSizeForReduce, IUnknown *coder);
40
41#endif
42