ACF $AcfVersion:0$
IProgressManager.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtCore/QByteArray>
7#include <QtCore/QString>
8
9
10// STD includes
11#include <memory>
12
13// ACF includes
14#include <istd/IPolymorphic.h>
16
17
18namespace ibase
19{
20
21
26{
27public:
31 virtual void ResetProgressManager() = 0;
40 virtual std::unique_ptr<IProgressManager> CreateSubtaskManager(
41 const QByteArray& taskId,
42 const QString& taskDescription,
43 double weight = 1.0) = 0;
44
50 virtual std::unique_ptr<IProgressLogger> StartProgressLogger(bool isCancelable = false, const QString& description = {}) = 0;
51};
52
53
54} // namespace ibase
55
56
57
58
Consume information about progress of some process.
virtual std::unique_ptr< IProgressLogger > StartProgressLogger(bool isCancelable=false, const QString &description={})=0
Create progress logger.
virtual void ResetProgressManager()=0
Reset progress manager and make it possible to reuse it.
virtual std::unique_ptr< IProgressManager > CreateSubtaskManager(const QByteArray &taskId, const QString &taskDescription, double weight=1.0)=0
Create progress manager for the subtask.
Base interface for all used interfaces and implementations.
This namespace contains basic implementations of standard primitives on the component level.