1 // ProgressUtils.h 2 3 #ifndef __PROGRESSUTILS_H 4 #define __PROGRESSUTILS_H 5 6 #include "../../Common/MyCom.h" 7 8 #include "../ICoder.h" 9 #include "../IProgress.h" 10 11 class CLocalProgress: 12 public ICompressProgressInfo, 13 public CMyUnknownImp 14 { 15 CMyComPtr<IProgress> _progress; 16 CMyComPtr<ICompressProgressInfo> _ratioProgress; 17 bool _inSizeIsMain; 18 public: 19 UInt64 ProgressOffset; 20 UInt64 InSize; 21 UInt64 OutSize; 22 bool SendRatio; 23 bool SendProgress; 24 25 CLocalProgress(); 26 void Init(IProgress *progress, bool inSizeIsMain); 27 HRESULT SetCur(); 28 29 MY_UNKNOWN_IMP 30 31 STDMETHOD(SetRatioInfo)(const UInt64 *inSize, const UInt64 *outSize); 32 }; 33 34 #endif 35