36 m_inc -> removeListener (
this ) ;
45 error() <<
"Could not locate 'IncidentSvc'" <<
endmsg ;
48 m_inc -> addListener (
this , IncidentType::BeginEvent ) ;
49 m_inc -> addListener (
this , IncidentType::EndEvent ) ;
51 if ( m_algorithms.get() && !m_algorithms->empty() )
53 warning() <<
"Non-empty stack of algorithms #" 54 << m_algorithms->size() <<
endmsg ;
65 warning() <<
"Non-empty stack of algorithms #" 71 m_inc -> removeListener (
this ) ;
114 error() <<
"Algorithm stack is invalid" <<
endmsg ;
135 error() <<
"Non-empty stack of algorithms #" StatusCode initialize() override
StatusCode finalize() override
void handle(const Incident &) override
handle incident
SmartIF< IIncidentSvc > m_inc
pointer to Incident Service
StatusCode unSetCurrentAlg(IAlgorithm *a) override
remove the algorithm ("pop_back")
bool isFailure() const
Test for a status code of FAILURE.
#define DECLARE_COMPONENT(type)
boost::thread_specific_ptr< IAlgContextSvc::Algorithms > m_algorithms
the stack of current algorithms
MsgStream & error() const
shortcut for the method msgStream(MSG::ERROR)
MsgStream & warning() const
shortcut for the method msgStream(MSG::WARNING)
IAlgorithm * currentAlg() const override
accessor to current algorithm:
This class is used for returning status codes from appropriate routines.
The IAlgorithm is the interface implemented by the Algorithm base class.
Base class for all Incidents (computing events).
StatusCode service(const std::string &name, const T *&psvc, bool createIf=true) const
Access a service by name, creating it if it doesn't already exist.
StatusCode finalize() override
standard finalization of the service
void reset(TYPE *ptr=nullptr)
Set the internal pointer to the passed one disposing of the old one.
StatusCode setCurrentAlg(IAlgorithm *a) override
set the currently executing algorithm ("push_back")
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.