1 // CrossThreadProgress.h
\r
3 #ifndef __CROSSTHREADPROGRESS_H
\r
4 #define __CROSSTHREADPROGRESS_H
\r
6 #include "../../ICoder.h"
\r
7 #include "../../../Windows/Synchronization.h"
\r
8 #include "../../../Common/MyCom.h"
\r
10 class CCrossThreadProgress:
\r
11 public ICompressProgressInfo,
\r
12 public CMyUnknownImp
\r
15 const UInt64 *InSize;
\r
16 const UInt64 *OutSize;
\r
18 NWindows::NSynchronization::CAutoResetEvent ProgressEvent;
\r
19 NWindows::NSynchronization::CAutoResetEvent WaitEvent;
\r
23 RINOK(ProgressEvent.CreateIfNotCreated());
\r
24 return WaitEvent.CreateIfNotCreated();
\r
28 ProgressEvent.Reset();
\r
34 STDMETHOD(SetRatioInfo)(const UInt64 *inSize, const UInt64 *outSize);
\r