Public Member Functions | Private Attributes | List of all members
art::WorkerInPath::WorkerInPathDoneTask Class Reference

Public Member Functions

 WorkerInPathDoneTask (WorkerInPath *wip, ScheduleID const scheduleID, WaitingTaskPtr workerDoneTask, GlobalTaskGroup *taskGroup)
 
void operator() (exception_ptr const ex) const
 

Private Attributes

WorkerInPathwip_
 
ScheduleID const sid_
 
WaitingTaskPtr workerDoneTask_
 
GlobalTaskGrouptaskGroup_
 

Detailed Description

Definition at line 85 of file WorkerInPath.cc.

Constructor & Destructor Documentation

art::WorkerInPath::WorkerInPathDoneTask::WorkerInPathDoneTask ( WorkerInPath wip,
ScheduleID const  scheduleID,
WaitingTaskPtr  workerDoneTask,
GlobalTaskGroup taskGroup 
)
inline

Definition at line 87 of file WorkerInPath.cc.

91  : wip_{wip}
92  , sid_{scheduleID}
93  , workerDoneTask_{std::move(workerDoneTask)}
94  , taskGroup_{taskGroup}
95  {}
def move(depos, offset)
Definition: depos.py:107

Member Function Documentation

void art::WorkerInPath::WorkerInPathDoneTask::operator() ( exception_ptr const  ex) const
inline

Definition at line 98 of file WorkerInPath.cc.

99  {
101  if (ex) {
102  ++wip_->counts_thrown_;
104  TDEBUG_END_TASK_SI(4, sid_) << "because of EXCEPTION";
105  return;
106  }
107 
108  wip_->returnCode_ = wip_->worker_->returnCode();
109  TDEBUG_TASK_SI(5, sid_) << "raw returnCode_: " << wip_->returnCode_;
110  if (wip_->filterAction_ == FilterAction::Veto) {
112  } else if (wip_->filterAction_ == FilterAction::Ignore) {
113  wip_->returnCode_ = true;
114  }
115  TDEBUG_TASK_SI(5, sid_) << "final returnCode_: " << wip_->returnCode_;
116  if (wip_->returnCode_) {
117  ++wip_->counts_passed_;
118  } else {
119  ++wip_->counts_failed_;
120  }
121  TDEBUG_END_TASK_SI(4, sid_) << "returnCode_: " << wip_->returnCode_;
123  }
#define TDEBUG_BEGIN_TASK_SI(LEVEL, SI)
#define TDEBUG_END_TASK_SI(LEVEL, SI)
#define TDEBUG_TASK_SI(LEVEL, SI)
std::size_t counts_thrown_
Definition: WorkerInPath.h:81
detail::FilterAction filterAction_
Definition: WorkerInPath.h:70
void may_run(hep::concurrency::WaitingTaskPtr task, std::exception_ptr ex_ptr={})
std::size_t counts_failed_
Definition: WorkerInPath.h:80
cet::exempt_ptr< Worker > worker_
Definition: WorkerInPath.h:67
std::size_t counts_passed_
Definition: WorkerInPath.h:79

Member Data Documentation

ScheduleID const art::WorkerInPath::WorkerInPathDoneTask::sid_
private

Definition at line 127 of file WorkerInPath.cc.

GlobalTaskGroup* art::WorkerInPath::WorkerInPathDoneTask::taskGroup_
private

Definition at line 129 of file WorkerInPath.cc.

WorkerInPath* art::WorkerInPath::WorkerInPathDoneTask::wip_
private

Definition at line 126 of file WorkerInPath.cc.

WaitingTaskPtr art::WorkerInPath::WorkerInPathDoneTask::workerDoneTask_
private

Definition at line 128 of file WorkerInPath.cc.


The documentation for this class was generated from the following file: