Mantid
Loading...
Searching...
No Matches
AlgorithmProgressDialogPresenter.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2019 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
13
14#include <QTreeWidgetItem>
15#include <unordered_map>
16
21namespace MantidQt {
22namespace MantidWidgets {
23class AlgorithmProgressModel;
24class IAlgorithmProgressDialogWidget;
25
27 Q_OBJECT
28 using RunningAlgorithms = std::unordered_map<Mantid::API::AlgorithmID, std::pair<QTreeWidgetItem *, QProgressBar *>>;
29
30public:
33
34 void algorithmStartedSlot(Mantid::API::AlgorithmID) override;
35 void updateProgressBarSlot(Mantid::API::AlgorithmID, const double progress, const QString message,
36 const double estimatedTime, const int progressPrecision) override;
37 void algorithmEndedSlot(Mantid::API::AlgorithmID) override;
38 size_t getNumberTrackedAlgorithms();
39
40private:
47};
48} // namespace MantidWidgets
49} // namespace MantidQt
#define EXPORT_OPT_MANTIDQT_COMMON
Definition: DllOption.h:15
RunningAlgorithms m_progressBars
Container for all the progress bars that are currently being displayed This container does NOT own an...
std::unordered_map< Mantid::API::AlgorithmID, std::pair< QTreeWidgetItem *, QProgressBar * > > RunningAlgorithms
AlgorithmProgressModel & m_model
Reference to the model of the main window progress bar.
The AlgorithmProgressDialogPresenter keeps track of the running algorithms and displays a progress ba...
void * AlgorithmID
As we have multiple interfaces to the same logical algorithm we need a way of uniquely identifying ma...
Definition: IAlgorithm.h:28