Go to the documentation of this file.
27 #define ON_DEBUG if ( msgLevel( MSG::DEBUG ) )
28 #define ON_VERBOSE if ( msgLevel( MSG::VERBOSE ) )
30 #define DEBMSG ON_DEBUG debug()
31 #define VERMSG ON_VERBOSE verbose()
35 if ( sc.isFailure() )
return sc;
41 incNames.
push_back( IncidentType::BeginEvent );
42 incNames.
push_back( IncidentType::EndEvent );
46 for (
auto& i : incNames ) {
m_incSvc->addListener(
this, i,
m_prio ); }
54 if ( incident.
type() == IncidentType::BeginEvent ) {
58 warning() <<
" Context already exists for '" << incident.
type() <<
"' event=" << incident.
context().
evt()
61 }
else if ( incident.
type() == IncidentType::EndEvent ) {
66 warning() <<
" Context is missing for '" << incident.
type() <<
"' event=" << incident.
context().
evt() <<
endmsg;
69 info() <<
" Cleaned up context store for event =" << incident.
context().
evt() <<
" for incident='"
72 info() <<
" Handling incident '" << incident.
type() <<
"' at ctx=" << incident.
context() <<
endmsg;
77 debug() <<
"Asked for data with context " << *
ctx <<
endmsg;
80 fatal() <<
" data for event " <<
ctx->evt() <<
" is not initialized yet!. This shouldn't happen!" <<
endmsg;
88 fatal() <<
" data for event " << ct.evt() <<
" is not initialized yet!. This shouldn't happen!" <<
endmsg;
Gaudi::Property< long > m_prio
StatusCode initialize() override
GAUDI_API const EventContext & currentContext()
SmartIF< IIncidentSvc > m_incSvc
SmartIF< IMessageSvc > m_msgSvc
StatusCode finalize() override
StatusCode initialize() override
bool setValue(const ValueType &v)
EventContext context() const
Access to the EventContext of the source of the incident.
const std::string & name() const override
Retrieve name of the service
tbb::concurrent_unordered_map< EventContext, uint64_t, EventContextHash, EventContextHash > m_ctxData
Gaudi::Property< uint64_t > m_fileOffset
Gaudi::Property< std::vector< std::string > > m_incidentNames
const ValueType & value() const
void getData(uint64_t *data, EventContext *ctx=0) const override
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Gaudi::Property< uint64_t > m_eventMultiplier
#define DECLARE_COMPONENT(type)
StatusCode finalize() override
const std::string & type() const
Access to the incident type.
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.
void handle(const Incident &incident) override
Reimplements from IIncidentListener.