Index: src/libchcore/TSubTaskBase.h =================================================================== diff -u -N -rd88274a4bbfd4ef005d44c4d179b7596cb627486 -rbebda797ec6983535a8940f8f9f15453fe6b1785 --- src/libchcore/TSubTaskBase.h (.../TSubTaskBase.h) (revision d88274a4bbfd4ef005d44c4d179b7596cb627486) +++ src/libchcore/TSubTaskBase.h (.../TSubTaskBase.h) (revision bebda797ec6983535a8940f8f9f15453fe6b1785) @@ -36,6 +36,17 @@ /////////////////////////////////////////////////////////////////////////// // TSubTaskBase +class LIBCHCORE_API TSubTaskProgressInfo +{ +public: + virtual ~TSubTaskProgressInfo() {} + + virtual void Serialize(TReadBinarySerializer& rSerializer) = 0; + virtual void Serialize(TWriteBinarySerializer& rSerializer) const = 0; + + virtual void ResetProgress() = 0; +}; + class LIBCHCORE_API TSubTaskBase { public: @@ -55,6 +66,8 @@ virtual ESubOperationResult Exec() = 0; virtual ESubOperationType GetSubOperationType() const = 0; + virtual TSubTaskProgressInfo& GetProgressInfo() = 0; + TSubTaskContext& GetContext() { return m_rContext; } const TSubTaskContext& GetContext() const { return m_rContext; }