1 #ifndef FWCore_Framework_globalTransitionAsync_h 2 #define FWCore_Framework_globalTransitionAsync_h 34 class LuminosityBlockPrincipal;
54 template<
typename Traits,
typename P,
typename SC >
65 auto subs =
make_waiting_task(tbb::task::allocate_root(), [&iSubProcesses, iWait,&iPrincipal,iTS,token](std::exception_ptr
const* iPtr)
mutable {
69 auto delayError =
make_waiting_task(tbb::task::allocate_root(), [iWait,token,excpt](std::exception_ptr
const* )
mutable {
85 template<
typename Traits,
typename P,
typename SC >
92 bool cleaningUpAfterException)
98 auto subs =
make_waiting_task(tbb::task::allocate_root(), [&iSubProcesses, iWait,&iPrincipal,iTS,token,cleaningUpAfterException](std::exception_ptr
const* iPtr)
mutable {
102 auto delayError =
make_waiting_task(tbb::task::allocate_root(), [iWait,token,excpt](std::exception_ptr
const* )
mutable {
107 for_all(iSubProcesses, [&h, &iPrincipal, iTS,cleaningUpAfterException](
auto& subProcess){
110 for_all(iSubProcesses, [&iWait, &iPrincipal, iTS,cleaningUpAfterException](
auto& subProcess){
void processOneGlobalAsync(WaitingTaskHolder iTask, typename T::MyPrincipal &principal, EventSetup const &eventSetup, bool cleaningUpAfterException=false)
void beginGlobalTransitionAsync(WaitingTaskHolder iWait, Schedule &iSchedule, P &iPrincipal, IOVSyncValue const &iTS, EventSetup const &iES, SC &iSubProcesses)
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
ServiceToken presentToken() const
Func for_all(ForwardSequence &s, Func f)
wrapper for std::for_each
void subProcessDoGlobalEndTransitionAsync(WaitingTaskHolder iHolder, SubProcess &iSubProcess, LuminosityBlockPrincipal &iPrincipal, IOVSyncValue const &iTS, bool cleaningUpAfterException)
void doneWaiting(std::exception_ptr iExcept)
void doEndRunAsync(WaitingTaskHolder iHolder, RunPrincipal const &principal, IOVSyncValue const &ts, bool cleaningUpAfterException)
void doBeginLuminosityBlockAsync(WaitingTaskHolder iHolder, LuminosityBlockPrincipal const &principal, IOVSyncValue const &ts)
void doBeginRunAsync(WaitingTaskHolder iHolder, RunPrincipal const &principal, IOVSyncValue const &ts)
static ServiceRegistry & instance()
void doEndLuminosityBlockAsync(WaitingTaskHolder iHolder, LuminosityBlockPrincipal const &principal, IOVSyncValue const &ts, bool cleaningUpAfterException)
void subProcessDoGlobalBeginTransitionAsync(WaitingTaskHolder iHolder, SubProcess &iSubProcess, LuminosityBlockPrincipal &iPrincipal, IOVSyncValue const &iTS)
FunctorWaitingTask< F > * make_waiting_task(ALLOC &&iAlloc, F f)
std::pair< OmniClusterRef, TrackingParticleRef > P
void endGlobalTransitionAsync(WaitingTaskHolder iWait, Schedule &iSchedule, P &iPrincipal, IOVSyncValue const &iTS, EventSetup const &iES, SC &iSubProcesses, bool cleaningUpAfterException)