Mantid
Loading...
Searching...
No Matches
Progress.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2009 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
9//----------------------------------------------------------------------
10// Includes
11//----------------------------------------------------------------------
12#include "MantidAPI/DllConfig.h"
14
15namespace Mantid {
16namespace API {
17class Algorithm;
18
25class MANTID_API_DLL Progress final : public Mantid::Kernel::ProgressBase {
26public:
27 Progress();
28 Progress(Algorithm *alg, double start, double end, int numSteps);
29 Progress(Algorithm *alg, double start, double end, int64_t numSteps);
30 Progress(Algorithm *alg, double start, double end, size_t numSteps);
31 void doReport(const std::string &msg = "") override;
32 bool hasCancellationBeenRequested() const override;
33
34private:
37};
38
39} // namespace API
40} // namespace Mantid
Base class from which all concrete algorithm classes should be derived.
Definition: Algorithm.h:85
Helper class for reporting progress from algorithms.
Definition: Progress.h:25
Algorithm *const m_alg
Owning algorithm.
Definition: Progress.h:36
Helper class which provides the Collimation Length for SANS instruments.