9 #include "hep_concurrency/WaitingTask.h" 89 WaitingTaskPtr workerDoneTask,
93 , workerDoneTask_{
std::move(workerDoneTask)}
102 ++wip_->counts_thrown_;
108 wip_->returnCode_ = wip_->worker_->returnCode();
109 TDEBUG_TASK_SI(5, sid_) <<
"raw returnCode_: " << wip_->returnCode_;
110 if (wip_->filterAction_ == FilterAction::Veto) {
111 wip_->returnCode_ = !wip_->returnCode_;
112 }
else if (wip_->filterAction_ == FilterAction::Ignore) {
113 wip_->returnCode_ =
true;
115 TDEBUG_TASK_SI(5, sid_) <<
"final returnCode_: " << wip_->returnCode_;
116 if (wip_->returnCode_) {
117 ++wip_->counts_passed_;
119 ++wip_->counts_failed_;
139 auto workerInPathDoneTask = make_waiting_task<WorkerInPathDoneTask>(
140 this, scheduleID, workerDoneTask,
taskGroup_);
#define TDEBUG_BEGIN_TASK_SI(LEVEL, SI)
detail::FilterAction filterAction() const
std::size_t timesPassed() const
Worker * getWorker() const
std::size_t timesFailed() const
#define TDEBUG_END_TASK_SI(LEVEL, SI)
ModuleContext moduleContext_
#define TDEBUG_TASK_SI(LEVEL, SI)
GlobalTaskGroup * taskGroup_
WorkerInPath(cet::exempt_ptr< Worker >, detail::FilterAction, ModuleContext const &, GlobalTaskGroup &group)
GlobalTaskGroup * taskGroup_
void operator()(exception_ptr const ex) const
std::size_t counts_thrown_
std::size_t timesVisited() const
#define TDEBUG_END_FUNC_SI(LEVEL, SI)
detail::FilterAction filterAction_
bool run(Transition, Principal &)
WaitingTaskPtr workerDoneTask_
WorkerInPathDoneTask(WorkerInPath *wip, ScheduleID const scheduleID, WaitingTaskPtr workerDoneTask, GlobalTaskGroup *taskGroup)
std::size_t timesExcept() const
void may_run(hep::concurrency::WaitingTaskPtr task, std::exception_ptr ex_ptr={})
std::size_t counts_visited_
#define TDEBUG_BEGIN_FUNC_SI(LEVEL, SI)
std::size_t counts_failed_
cet::exempt_ptr< Worker > worker_
std::string const & label() const
std::size_t counts_passed_