14#include "MantidAPI/DllConfig.h"
15#include <Poco/NObserver.h>
31 void observeStarting();
38 void stopObservingManager();
41 const int progressPrecision);
48 void _progressHandle(
const Poco::AutoPtr<Algorithm::ProgressNotification> &pNf);
52 void _startHandle(
const Poco::AutoPtr<Algorithm::StartedNotification> &pNf);
56 void _finishHandle(
const Poco::AutoPtr<Algorithm::FinishedNotification> &pNf);
60 void _errorHandle(
const Poco::AutoPtr<Algorithm::ErrorNotification> &pNf);
64 void _startingHandle(
const Poco::AutoPtr<AlgorithmStartingNotification> &pNf);
void stopObserving(AlgorithmObserver &self, const boost::python::object &alg)
void observeProgress(AlgorithmObserver &self, const boost::python::object &alg)
void observeFinish(AlgorithmObserver &self, const boost::python::object &alg)
void observeError(AlgorithmObserver &self, const boost::python::object &alg)
Observes Algorithm notifications: start,progress,finish,error.
virtual void startingHandle(IAlgorithm_sptr alg)
Poco::NObserver< AlgorithmObserver, AlgorithmStartingNotification > m_startingObserver
Poco::NObserver for API::AlgorithmStartingNotification.
virtual ~AlgorithmObserver()
Virtual destructor.
virtual void finishHandle(const IAlgorithm *alg)
Poco::NObserver< AlgorithmObserver, Algorithm::ProgressNotification > m_progressObserver
Poco::NObserver for Algorithm::ProgressNotification.
virtual void errorHandle(const IAlgorithm *alg, const std::string &what)
virtual void startHandle(const IAlgorithm *alg)
Poco::NObserver< AlgorithmObserver, Algorithm::StartedNotification > m_startObserver
Poco::NObserver for Algorithm::StartedNotification.
virtual void progressHandle(const IAlgorithm *alg, double p, const std::string &msg, const double estimatedTime, const int progressPrecision)
Poco::NObserver< AlgorithmObserver, Algorithm::ErrorNotification > m_errorObserver
Poco::NObserver for Algorithm::ErrorNotification.
Poco::NObserver< AlgorithmObserver, Algorithm::FinishedNotification > m_finishObserver
Poco::NObserver for Algorithm::FinishedNotification.
IAlgorithm is the interface implemented by the Algorithm base class.
std::shared_ptr< IAlgorithm > IAlgorithm_sptr
shared pointer to Mantid::API::IAlgorithm
std::shared_ptr< const IAlgorithm > IAlgorithm_const_sptr
shared pointer to Mantid::API::IAlgorithm (const version)
Helper class which provides the Collimation Length for SANS instruments.