Go to the documentation of this file. 1 #ifndef FWCore_Framework_UnscheduledCallProducer_h
2 #define FWCore_Framework_UnscheduledCallProducer_h
27 #include <unordered_map>
34 class EventTransitionInfo;
35 class ModuleCallingContext;
47 assert(
nullptr != aWorker);
61 template <
typename T,
typename U>
63 typename T::TransitionInfoType
const&
info,
66 typename T::Context
const* topContext,
67 U const* context)
const {
78 worker->doWorkNoPrefetchingAsync<
T>(
task,
info,
token, streamID, parentContext, topContext);
85 typename T::TransitionInfoType
const&
info,
89 typename T::Context
const* context) {
91 worker->doWorkAsync<
T>(
task,
info,
token, streamID, parentContext, context);
96 template <
typename T,
typename ID>
98 std::ostringstream ost;
99 ost <<
"Processing " << T::transitionName() <<
" " <<
id;
void addContextToException(cms::Exception &ex, Worker const *worker, ID const &id) const
UnscheduledCallProducer(ActivityRegistry &iReg)
void runNowAsync(WaitingTask *task, typename T::TransitionInfoType const &info, ServiceToken const &token, StreamID streamID, typename T::Context const *topContext, U const *context) const
void addContext(std::string const &context)
UnscheduledAuxiliary aux_
worker_container::const_iterator const_iterator
void setEventTransitionInfo(EventTransitionInfo const &info)
signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)> preModuleDelayedGetSignal_
PostModuleEventDelayedGet postModuleEventDelayedGetSignal_
void setEventTransitionInfo(EventTransitionInfo const &info)
void addWorker(Worker *aWorker)
const_iterator begin() const
PreModuleEventDelayedGet preModuleEventDelayedGetSignal_
std::vector< Worker * > worker_container
UnscheduledAuxiliary const & auxiliary() const
virtual bool hasAccumulator() const =0
void runAccumulatorsAsync(WaitingTask *task, typename T::TransitionInfoType const &info, ServiceToken const &token, StreamID streamID, ParentContext const &parentContext, typename T::Context const *context)
const_iterator end() const
signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)> postModuleDelayedGetSignal_
worker_container accumulatorWorkers_
worker_container unscheduledWorkers_