Index: src/libchcore/TSubTaskBase.h =================================================================== diff -u -N -r20aff533ab239b5b41263bb342879b4ea46fdbf6 -r12a1725bfd04b0f55fd0fda302975fdcd4174943 --- src/libchcore/TSubTaskBase.h (.../TSubTaskBase.h) (revision 20aff533ab239b5b41263bb342879b4ea46fdbf6) +++ src/libchcore/TSubTaskBase.h (.../TSubTaskBase.h) (revision 12a1725bfd04b0f55fd0fda302975fdcd4174943) @@ -64,12 +64,17 @@ TSubTaskBase(TSubTaskContext& rContext); virtual ~TSubTaskBase(); + virtual void Reset() = 0; + virtual ESubOperationResult Exec() = 0; virtual ESubOperationType GetSubOperationType() const = 0; + // progress virtual TSubTaskProgressInfo& GetProgressInfo() = 0; - virtual const TSubTaskStatsInfo& GetStatsInfo() const { return m_tSubTaskStats; } + // stats + virtual void GetStatsSnapshot(TSubTaskStatsSnapshot& rStats) const = 0; + protected: // some common operations TSubTaskContext& GetContext() { return m_rContext; } @@ -82,9 +87,6 @@ TSubTaskBase(const TSubTaskBase&); TSubTaskBase& operator=(const TSubTaskBase&); -protected: - TSubTaskStatsInfo m_tSubTaskStats; - private: TSubTaskContext& m_rContext; };