Go to the documentation of this file.
11 #ifndef GAUDIKERNEL_IALGEXECSTATESVC_H
12 #define GAUDIKERNEL_IALGEXECSTATESVC_H 1
55 switch (
s.state() ) {
56 case AlgExecState::State::None:
58 case AlgExecState::State::Executing:
61 return ost <<
"d f: " <<
s.filterPassed() <<
" sc: " <<
s.execStatus();
75 return os << label.at(
s );
friend std::ostream & operator<<(std::ostream &ost, const AlgExecState &s)
void setState(State s, const StatusCode &sc)
virtual void dump(std::ostringstream &ost, const EventContext &ctx) const =0
std::map< Gaudi::StringKey, AlgExecState > AlgStateMap_t
virtual unsigned int algErrorCount(const IAlgorithm *iAlg) const =0
virtual AlgExecState & algExecState(IAlgorithm *iAlg, const EventContext &ctx)=0
virtual void resetErrorCount(const IAlgorithm *iAlg)=0
virtual void addAlg(const Gaudi::StringKey &algName)=0
Abstract interface for a service that manages the Algorithm execution states.
const StatusCode & execStatus() const
virtual const AlgStateMap_t & algExecStates(const EventContext &ctx) const =0
virtual void reset(const EventContext &ctx)=0
virtual const Gaudi::StringKey & nameKey() const =0
StringKey rep of name.
const AlgExecState & algExecState(IAlgorithm *iAlg, const EventContext &ctx) const
void setExecStatus(const StatusCode &sc=StatusCode::SUCCESS)
constexpr static const auto SUCCESS
void addAlg(IAlgorithm *iAlg)
bool filterPassed() const
virtual unsigned int incrementErrorCount(const IAlgorithm *iAlg)=0
virtual void setEventStatus(const EventStatus::Status &sc, const EventContext &ctx)=0
virtual const AlgExecState & algExecState(const Gaudi::StringKey &algName, const EventContext &ctx) const =0
virtual const EventStatus::Status & eventStatus(const EventContext &ctx) const =0
constexpr static const auto FAILURE
void setFilterPassed(bool f=true)
DeclareInterfaceID(IAlgExecStateSvc, 1, 0)
InterfaceID.
virtual void updateEventStatus(const bool &b, const EventContext &ctx)=0
std::ostream & operator<<(std::ostream &os, Status s)