#include <WorkerManager.h>
Public Types | |
typedef std::vector< Worker * > | AllWorkers |
Public Member Functions | |
ExceptionToActionTable const & | actionTable () const |
void | addToAllWorkers (Worker *w) |
void | addToUnscheduledWorkers (ParameterSet &pset, ProductRegistry &preg, PreallocationConfiguration const *prealloc, std::shared_ptr< ProcessConfiguration > processConfiguration, std::string label, std::set< std::string > &unscheduledLabels, std::vector< std::string > &shouldBeUsedLabels) |
AllWorkers const & | allWorkers () const |
void | beginJob (ProductRegistry const &iRegistry, eventsetup::ESRecordsToProxyIndices const &) |
void | beginStream (StreamID iID, StreamContext &streamContext) |
void | endJob () |
void | endJob (ExceptionCollector &collector) |
void | endStream (StreamID iID, StreamContext &streamContext) |
Worker * | getWorker (ParameterSet &pset, ProductRegistry &preg, PreallocationConfiguration const *prealloc, std::shared_ptr< ProcessConfiguration const > processConfiguration, std::string const &label) |
template<typename T > | |
void | processAccumulatorsAsync (WaitingTask *task, typename T::MyPrincipal const &ep, EventSetupImpl const &es, ServiceToken const &token, StreamID streamID, ParentContext const &parentContext, typename T::Context const *context) |
template<typename T , typename U > | |
void | processOneOccurrence (typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false) |
template<typename T , typename U > | |
void | processOneOccurrenceAsync (WaitingTask *task, typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, ServiceToken const &token, StreamID streamID, typename T::Context const *topContext, U const *context) |
void | resetAll () |
void | setupOnDemandSystem (Principal &principal, EventSetupImpl const &es) |
WorkerManager (std::shared_ptr< ActivityRegistry > actReg, ExceptionToActionTable const &actions) | |
WorkerManager (std::shared_ptr< ModuleRegistry > modReg, std::shared_ptr< ActivityRegistry > actReg, ExceptionToActionTable const &actions) | |
WorkerManager (WorkerManager &&)=default | |
Private Attributes | |
ExceptionToActionTable const * | actionTable_ |
AllWorkers | allWorkers_ |
void const * | lastSetupEventPrincipal_ |
UnscheduledCallProducer | unscheduled_ |
WorkerRegistry | workerReg_ |
Definition at line 33 of file WorkerManager.h.
typedef std::vector<Worker*> edm::WorkerManager::AllWorkers |
Definition at line 35 of file WorkerManager.h.
edm::WorkerManager::WorkerManager | ( | std::shared_ptr< ActivityRegistry > | actReg, |
ExceptionToActionTable const & | actions | ||
) |
Definition at line 17 of file WorkerManager.cc.
|
default |
edm::WorkerManager::WorkerManager | ( | std::shared_ptr< ModuleRegistry > | modReg, |
std::shared_ptr< ActivityRegistry > | actReg, | ||
ExceptionToActionTable const & | actions | ||
) |
Definition at line 24 of file WorkerManager.cc.
|
inline |
Definition at line 89 of file WorkerManager.h.
References actionTable_.
Referenced by edm::StreamSchedule::actionTable().
void edm::WorkerManager::addToAllWorkers | ( | Worker * | w | ) |
Definition at line 119 of file WorkerManager.cc.
References allWorkers_, edm::search_all(), and w.
Referenced by edm::StreamSchedule::addToAllWorkers(), and addToUnscheduledWorkers().
void edm::WorkerManager::addToUnscheduledWorkers | ( | ParameterSet & | pset, |
ProductRegistry & | preg, | ||
PreallocationConfiguration const * | prealloc, | ||
std::shared_ptr< ProcessConfiguration > | processConfiguration, | ||
std::string | label, | ||
std::set< std::string > & | unscheduledLabels, | ||
std::vector< std::string > & | shouldBeUsedLabels | ||
) |
Definition at line 42 of file WorkerManager.cc.
References addToAllWorkers(), edm::UnscheduledCallProducer::addWorker(), cms::cuda::assert(), getWorker(), edm::Worker::kFilter, kFilterType(), edm::Worker::kProducer, kProducerType(), label, edm::Worker::moduleType(), muonDTDigis_cfi::pset, AlCaHLTBitMon_QueryRunRegistry::string, and unscheduled_.
Referenced by edm::SecondaryEventProvider::SecondaryEventProvider(), and edm::StreamSchedule::StreamSchedule().
|
inline |
Definition at line 85 of file WorkerManager.h.
References allWorkers_.
Referenced by edm::StreamSchedule::allWorkers().
void edm::WorkerManager::beginJob | ( | ProductRegistry const & | iRegistry, |
eventsetup::ESRecordsToProxyIndices const & | iESIndices | ||
) |
Definition at line 81 of file WorkerManager.cc.
References allWorkers_, edm::Worker::beginJob(), edm::for_all(), edm::InEvent, edm::InLumi, edm::InRun, SimL1EmulatorRepack_CalouGT_cff::processName, and edm::ProductRegistry::productLookup().
Referenced by edm::SecondaryEventProvider::beginJob().
void edm::WorkerManager::beginStream | ( | StreamID | iID, |
StreamContext & | streamContext | ||
) |
Definition at line 105 of file WorkerManager.cc.
References allWorkers_.
Referenced by edm::SecondaryEventProvider::beginStream(), and edm::StreamSchedule::beginStream().
void edm::WorkerManager::endJob | ( | void | ) |
Definition at line 65 of file WorkerManager.cc.
References allWorkers_.
Referenced by edm::SecondaryEventProvider::endJob().
void edm::WorkerManager::endJob | ( | ExceptionCollector & | collector | ) |
Definition at line 71 of file WorkerManager.cc.
References edm::ExceptionCollector::addException(), allWorkers_, and edm::convertException::wrap().
void edm::WorkerManager::endStream | ( | StreamID | iID, |
StreamContext & | streamContext | ||
) |
Definition at line 111 of file WorkerManager.cc.
References allWorkers_.
Referenced by edm::SecondaryEventProvider::endStream(), and edm::StreamSchedule::endStream().
Worker * edm::WorkerManager::getWorker | ( | ParameterSet & | pset, |
ProductRegistry & | preg, | ||
PreallocationConfiguration const * | prealloc, | ||
std::shared_ptr< ProcessConfiguration const > | processConfiguration, | ||
std::string const & | label | ||
) |
Definition at line 33 of file WorkerManager.cc.
References actionTable_, edm::WorkerRegistry::getWorker(), label, CalibrationSummaryClient_cfi::params, muonDTDigis_cfi::pset, and workerReg_.
Referenced by addToUnscheduledWorkers(), and edm::StreamSchedule::fillWorkers().
void edm::WorkerManager::processAccumulatorsAsync | ( | WaitingTask * | task, |
typename T::MyPrincipal const & | ep, | ||
EventSetupImpl const & | es, | ||
ServiceToken const & | token, | ||
StreamID | streamID, | ||
ParentContext const & | parentContext, | ||
typename T::Context const * | context | ||
) |
Definition at line 149 of file WorkerManager.h.
References SiStripBadComponentsDQMServiceTemplate_cfg::ep, edm::UnscheduledCallProducer::runAccumulatorsAsync(), TrackValidation_cff::task, unpackBuffers-CaloStage2::token, and unscheduled_.
Referenced by edm::StreamSchedule::processOneEventAsync().
void edm::WorkerManager::processOneOccurrence | ( | typename T::MyPrincipal & | principal, |
EventSetupImpl const & | eventSetup, | ||
StreamID | streamID, | ||
typename T::Context const * | topContext, | ||
U const * | context, | ||
bool | cleaningUpAfterException = false |
||
) |
Definition at line 108 of file WorkerManager.h.
References edm::addContextAndPrintException(), cms::Exception::context(), SiStripBadComponentsDQMServiceTemplate_cfg::ep, edm::ServiceRegistry::instance(), edm::make_empty_waiting_task(), edm::ServiceRegistry::presentToken(), resetAll(), and edm::convertException::wrap().
Referenced by edm::SecondaryEventProvider::beginLuminosityBlock(), edm::SecondaryEventProvider::beginRun(), edm::SecondaryEventProvider::endLuminosityBlock(), and edm::SecondaryEventProvider::endRun().
void edm::WorkerManager::processOneOccurrenceAsync | ( | WaitingTask * | task, |
typename T::MyPrincipal & | principal, | ||
EventSetupImpl const & | eventSetup, | ||
ServiceToken const & | token, | ||
StreamID | streamID, | ||
typename T::Context const * | topContext, | ||
U const * | context | ||
) |
Definition at line 137 of file WorkerManager.h.
References SiStripBadComponentsDQMServiceTemplate_cfg::ep, edm::UnscheduledCallProducer::runNowAsync(), TrackValidation_cff::task, unpackBuffers-CaloStage2::token, mitigatedMETSequence_cff::U, and unscheduled_.
Referenced by edm::StreamSchedule::processOneStreamAsync().
void edm::WorkerManager::resetAll | ( | ) |
Definition at line 117 of file WorkerManager.cc.
References allWorkers_, edm::for_all(), and edm::Worker::reset().
Referenced by processOneOccurrence(), edm::StreamSchedule::processOneStreamAsync(), and setupOnDemandSystem().
void edm::WorkerManager::setupOnDemandSystem | ( | Principal & | principal, |
EventSetupImpl const & | es | ||
) |
Definition at line 125 of file WorkerManager.cc.
References allWorkers_, edm::UnscheduledCallProducer::auxiliary(), looper::config, SiStripBadComponentsDQMServiceTemplate_cfg::ep, lastSetupEventPrincipal_, resetAll(), edm::UnscheduledCallProducer::setEventSetup(), and unscheduled_.
Referenced by edm::StreamSchedule::processOneEventAsync(), and edm::SecondaryEventProvider::setupPileUpEvent().
|
private |
Definition at line 101 of file WorkerManager.h.
Referenced by actionTable(), and getWorker().
|
private |
Definition at line 102 of file WorkerManager.h.
Referenced by addToAllWorkers(), allWorkers(), beginJob(), beginStream(), endJob(), endStream(), resetAll(), and setupOnDemandSystem().
|
private |
Definition at line 104 of file WorkerManager.h.
Referenced by setupOnDemandSystem().
|
private |
Definition at line 103 of file WorkerManager.h.
Referenced by addToUnscheduledWorkers(), processAccumulatorsAsync(), processOneOccurrenceAsync(), and setupOnDemandSystem().
|
private |
Definition at line 100 of file WorkerManager.h.
Referenced by getWorker().