18 throw GaudiException (
"Cast to Algorithm failed!",
"AlgoExecutionTask",
22 bool eventfailed=
false;
49 log <<
MSG::FATAL <<
".executeEvent(): Exception with tag=" << Exception.
tag()
54 log <<
MSG::FATAL <<
".executeEvent(): Standard std::exception thrown by " 59 log <<
MSG::FATAL <<
".executeEvent(): UNKNOWN Exception thrown by " Definition of the MsgStream class used to transmit messages.
Define general base for Gaudi exception.
SmartIF< IAlgorithm > m_algorithm
Helper class to set the application return code in case of early exit (e.g.
void commitHandles() override
bool isSuccess() const
Test for a status code of SUCCESS.
void setExecStatus(const StatusCode &sc=StatusCode::SUCCESS)
void setContext(const EventContext *context) override
set the context
SmartIF< ForwardSchedulerSvc > m_schedSvc
StatusCode promoteToAsyncExecuted(unsigned int iAlgo, int si, IAlgorithm *algo, EventContext *)
The call to this method is triggered only from within the IOBoundAlgTask.
virtual StatusCode sysExecute()=0
System execution. This method invokes the execute() method of a concrete algorithm.
constexpr int UnhandledException
TYPE * get() const
Get interface pointer.
void addAlg(Algorithm *, EventContext *, pthread_t)
virtual StatusCode execute() override
This class is used for returning status codes from appropriate routines.
virtual const AlgExecState & algExecState(const Gaudi::StringKey &algName, const EventContext &ctx) const =0
SmartIF< ISvcLocator > m_serviceLocator
virtual const std::string & tag() const
name tag for the exception, or exception type
void setExecuted(bool e=true)
The IAlgorithm is the interface implemented by the Algorithm base class.
GAUDI_API void setCurrentContext(const EventContext *ctx)
tbb::concurrent_bounded_queue< action > m_actionsQueue
Queue where closures are stored and picked for execution.
const unsigned int m_algoIndex
IAlgExecStateSvc * m_aess
Base class from which all concrete algorithm classes should be derived.
GAUDI_API void setCurrentContextEvt(long int evtN)
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
virtual void updateEventStatus(const bool &b)=0