37 m_inc->removeListener(
this );
42 numSlots = ( 1 > numSlots ) ? 1 : numSlots;
43 if ( numSlots > 1000 ) {
44 warning() <<
"Num Slots are greater than 1000. Is this correct? numSlots=" << numSlots <<
endmsg;
46 warning() <<
"Setting numSlots to " << numSlots <<
endmsg;
48 m_inEvtLoop.resize( numSlots, 0 );
53 error() <<
"Could not locate 'IncidentSvc'" <<
endmsg;
56 m_inc->addListener(
this, IncidentType::BeginEvent );
57 m_inc->addListener(
this, IncidentType::EndEvent );
59 if ( m_algorithms.get() && !m_algorithms->empty() ) {
60 warning() <<
"Non-empty stack of algorithms #" << m_algorithms->size() <<
endmsg;
72 numSlots = ( 1 > numSlots ) ? 1 : numSlots;
73 if ( numSlots > 1000 ) {
74 warning() <<
"Num Slots are greater than 1000. Is this correct? numSlots=" << numSlots <<
endmsg;
132 if ( a->
type() !=
"IncidentProcAlg" ) {
156 if ( inc.
type() ==
"BeginEvent" ) {
158 }
else if ( inc.
type() ==
"EndEvent" ) {
StatusCode initialize() override
std::vector< int > m_inEvtLoop
const std::string & type() const
Access to the incident type.
StatusCode finalize() override
StatusCode start() override
Gaudi::Property< bool > m_bypassInc
void handle(const Incident &) override
handle incident
StatusCode start() override
constexpr static const auto RECOVERABLE
constexpr static const auto SUCCESS
SmartIF< IIncidentSvc > m_inc
pointer to Incident Service
StatusCode setCurrentAlg(IAlgorithm *a, const EventContext &context) override
set the currently executing algorithm ("push_back")
This class represents an entry point to all the event specific data.
boost::thread_specific_ptr< IAlgContextSvc::Algorithms > m_algorithms
the stack of current algorithms
virtual const std::string & type() const =0
The type of the algorithm.
#define DECLARE_COMPONENT(type)
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.
static constexpr ContextID_t INVALID_CONTEXT_ID
The IAlgorithm is the interface implemented by the Algorithm base class.
StatusCode unSetCurrentAlg(IAlgorithm *a, const EventContext &context) override
remove the algorithm ("pop_back")
Base class for all Incidents (computing events).
constexpr static const auto FAILURE
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.
virtual void removeListener(IIncidentListener *lis, const std::string &type="")=0
Remove listener.
EventContext context() const
Access to the EventContext of the source of the incident.
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
static GAUDI_API std::size_t numConcurrentEvents()
number of Concurrent Events (for MT)