8 #include "boost/bind.hpp"
15 boost::shared_ptr<ActivityRegistry> areg,
29 isEndPath_(isEndPath) {
34 int nwrwue,
bool isEvent) {
35 bool should_continue =
true;
45 should_continue =
false;
47 <<
"Failing path " <<
name_
48 <<
", due to exception, message:\n"
59 e <<
"If you wish to continue processing events after a " << pNF <<
" exception,\n" <<
60 "add \"SkipEvent = cms.untracked.vstring('ProductNotFound')\" to the \"options\" PSet in the configuration.\n";
63 e <<
"ProcessingStopped\n";
64 e <<
"Exception going through path " <<
name_ <<
"\n";
69 return should_continue;
75 <<
"Exception passing through path " <<
name_ <<
"\n";
107 stopwatch_.reset(
new RunStopwatch::StopwatchPointer::element_type);
virtual char const * what() const
Path(int bitpos, std::string const &path_name, WorkersInPath const &workers, TrigResPtr trptr, ActionTable const &actions, boost::shared_ptr< ActivityRegistry > reg, bool isEndPath)
void recordStatus(int nwrwue, bool isEvent)
roAction_t actions[nactions]
std::string rootCause() const
std::vector< WorkerInPath > WorkersInPath
bool handleWorkerFailure(cms::Exception const &e, int nwrwue, bool isEvent)
ActionTable const * act_table_
Func for_all(ForwardSequence &s, Func f)
wrapper for std::for_each
boost::shared_ptr< HLTGlobalStatus > TrigResPtr
static std::string codeToString(Code)
-----------— implementation details ---------------—
void recordUnknownException(int nwrwue, bool isEvent)
void updateCounters(bool succeed, bool isEvent)
RunStopwatch::StopwatchPointer stopwatch_
actions::ActionCodes find(const std::string &category) const
std::string category() const