1 #ifndef FWCore_Framework_Path_h 2 #define FWCore_Framework_Path_h 35 class ModuleDescription;
36 class PathStatusInserter;
38 class LuminosityBlockPrincipal;
53 WorkersInPath
const& workers,
56 std::shared_ptr<ActivityRegistry> reg,
58 std::atomic<bool>* stopProcessEvent,
65 typename T::MyPrincipal
const&,
68 typename T::Context
const*);
94 Worker* pathStatusInserterWorker);
143 void finished(
int iModuleIndex,
bool iSucceeded, std::exception_ptr,
155 unsigned int iModuleIndex,
165 template <
typename T>
166 class PathSignalSentry {
175 ~PathSignalSentry() {
187 template <
typename T>
189 typename T::MyPrincipal
const&
p,
192 typename T::Context
const* context) {
194 worker.runWorkerAsync<
T>(task,
p,es,streamID,context);
std::string const & pathName() const
void recordStatus(int nwrwue, bool isEvent)
void handleEarlyFinish(EventPrincipal const &)
roAction_t actions[nactions]
int timesFailed(size_type i) const
std::vector< EarlyDeleteHelper * > earlyDeleteHelpers_
std::vector< WorkerInPath > WorkersInPath
WorkersInPath::size_type size_type
HLTState
status of a trigger path
int timesPassed(size_type i) const
void runNextWorkerAsync(unsigned int iNextModuleIndex, EventPrincipal const &, EventSetup const &, StreamID const &, StreamContext const *)
WaitingTaskList waitingTasks_
void setPathStatusInserter(PathStatusInserter *pathStatusInserter, Worker *pathStatusInserterWorker)
std::shared_ptr< ActivityRegistry > actReg_
void workerFinished(std::exception_ptr const *iException, unsigned int iModuleIndex, EventPrincipal const &iEP, EventSetup const &iES, StreamID const &iID, StreamContext const *iContext)
std::shared_ptr< HLTGlobalStatus > TrigResPtr
void processOneOccurrenceAsync(WaitingTask *, EventPrincipal const &, EventSetup const &, StreamID const &, StreamContext const *)
void handleEarlyFinish(LuminosityBlockPrincipal const &)
void handleEarlyFinish(RunPrincipal const &)
static void exceptionContext(cms::Exception &ex, bool isEvent, bool begin, BranchType branchType, ModuleDescription const &, std::string const &id, PathContext const &)
void finished(int iModuleIndex, bool iSucceeded, std::exception_ptr, StreamContext const *, EventPrincipal const &iEP, EventSetup const &iES, StreamID const &streamID)
void updateCounters(bool succeed, bool isEvent)
Path(int bitpos, std::string const &path_name, WorkersInPath const &workers, TrigResPtr trptr, ExceptionToActionTable const &actions, std::shared_ptr< ActivityRegistry > reg, StreamContext const *streamContext, std::atomic< bool > *stopProcessEvent, PathContext::PathType pathType)
int timesVisited(size_type i) const
bool handleWorkerFailure(cms::Exception &e, int nwrwue, bool isEvent, bool begin, BranchType branchType, ModuleDescription const &, std::string const &id)
void setEarlyDeleteHelpers(std::map< const Worker *, EarlyDeleteHelper * > const &)
void runAllModulesAsync(WaitingTask *, typename T::MyPrincipal const &, EventSetup const &, StreamID const &, typename T::Context const *)
ExceptionToActionTable const * act_table_
Path const & operator=(Path const &)=delete
std::string const & name() const
Worker const * getWorker(size_type i) const
int timesExcept(size_type i) const
std::atomic< bool > * stopProcessingEvent_
def branchType(schema, name)
Worker * pathStatusInserterWorker_
PathStatusInserter * pathStatusInserter_