MethodProps.h 695 B

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