michael@0: // ProgressUtils.h michael@0: michael@0: #ifndef __PROGRESSUTILS_H michael@0: #define __PROGRESSUTILS_H michael@0: michael@0: #include "../../Common/MyCom.h" michael@0: michael@0: #include "../ICoder.h" michael@0: #include "../IProgress.h" michael@0: michael@0: class CLocalCompressProgressInfo: michael@0: public ICompressProgressInfo, michael@0: public CMyUnknownImp michael@0: { michael@0: CMyComPtr _progress; michael@0: bool _inStartValueIsAssigned; michael@0: bool _outStartValueIsAssigned; michael@0: UInt64 _inStartValue; michael@0: UInt64 _outStartValue; michael@0: public: michael@0: void Init(ICompressProgressInfo *progress, michael@0: const UInt64 *inStartValue, const UInt64 *outStartValue); michael@0: michael@0: MY_UNKNOWN_IMP michael@0: michael@0: STDMETHOD(SetRatioInfo)(const UInt64 *inSize, const UInt64 *outSize); michael@0: }; michael@0: michael@0: class CLocalProgress: michael@0: public ICompressProgressInfo, michael@0: public CMyUnknownImp michael@0: { michael@0: CMyComPtr _progress; michael@0: bool _inSizeIsMain; michael@0: public: michael@0: void Init(IProgress *progress, bool inSizeIsMain); michael@0: michael@0: MY_UNKNOWN_IMP michael@0: michael@0: STDMETHOD(SetRatioInfo)(const UInt64 *inSize, const UInt64 *outSize); michael@0: }; michael@0: michael@0: #endif