#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 &, ProcessBlockHelperBase const &) |
void | beginStream (StreamID iID, StreamContext &streamContext) |
void | deleteModuleIfExists (std::string const &moduleLabel) |
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 (WaitingTaskHolder, typename T::TransitionInfoType const &, ServiceToken const &, StreamID, ParentContext const &, typename T::Context const *) |
template<typename T , typename U > | |
void | processOneOccurrenceAsync (WaitingTaskHolder, typename T::TransitionInfoType &, ServiceToken const &, StreamID, typename T::Context const *topContext, U const *context) |
void | resetAll () |
void | setupOnDemandSystem (EventTransitionInfo const &) |
void | setupResolvers (Principal &principal) |
WorkerManager (std::shared_ptr< ActivityRegistry > actReg, ExceptionToActionTable const &actions) | |
WorkerManager (WorkerManager &&)=default | |
WorkerManager (std::shared_ptr< ModuleRegistry > modReg, std::shared_ptr< ActivityRegistry > actReg, ExceptionToActionTable const &actions) | |
Private Attributes | |
ExceptionToActionTable const * | actionTable_ |
AllWorkers | allWorkers_ |
void const * | lastSetupEventPrincipal_ |
UnscheduledCallProducer | unscheduled_ |
WorkerRegistry | workerReg_ |
Definition at line 36 of file WorkerManager.h.
typedef std::vector<Worker*> edm::WorkerManager::AllWorkers |
Definition at line 38 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 135 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 52 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, | ||
ProcessBlockHelperBase const & | processBlockHelperBase | ||
) |
Definition at line 91 of file WorkerManager.cc.
References allWorkers_, edm::Worker::beginJob(), edm::for_all(), edm::InEvent, edm::InLumi, edm::InProcess, 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 121 of file WorkerManager.cc.
References allWorkers_.
Referenced by edm::SecondaryEventProvider::beginStream(), and edm::StreamSchedule::beginStream().
void edm::WorkerManager::deleteModuleIfExists | ( | std::string const & | moduleLabel | ) |
Definition at line 33 of file WorkerManager.cc.
References allWorkers_, edm::WorkerRegistry::deleteModule(), edm::WorkerRegistry::get(), HerwigMaxPtPartonFilter_cfi::moduleLabel, MatrixUtil::remove(), edm::UnscheduledCallProducer::removeWorker(), unscheduled_, and workerReg_.
Referenced by edm::StreamSchedule::deleteModule().
void edm::WorkerManager::endJob | ( | void | ) |
Definition at line 75 of file WorkerManager.cc.
References allWorkers_.
Referenced by edm::SecondaryEventProvider::endJob().
void edm::WorkerManager::endJob | ( | ExceptionCollector & | collector | ) |
Definition at line 81 of file WorkerManager.cc.
References edm::ExceptionCollector::addException(), allWorkers_, and edm::convertException::wrap().
void edm::WorkerManager::endStream | ( | StreamID | iID, |
StreamContext & | streamContext | ||
) |
Definition at line 127 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 43 of file WorkerManager.cc.
References actionTable_, edm::WorkerRegistry::getWorker(), label, submitPVValidationJobs::params, muonDTDigis_cfi::pset, and workerReg_.
Referenced by addToUnscheduledWorkers().
void edm::WorkerManager::processAccumulatorsAsync | ( | WaitingTaskHolder | task, |
typename T::TransitionInfoType const & | info, | ||
ServiceToken const & | token, | ||
StreamID | streamID, | ||
ParentContext const & | parentContext, | ||
typename T::Context const * | context | ||
) |
Definition at line 119 of file WorkerManager.h.
References visDQMUpload::context, info(), eostools::move(), edm::UnscheduledCallProducer::runAccumulatorsAsync(), TrackValidation_cff::task, unpackBuffers-CaloStage2::token, and unscheduled_.
Referenced by edm::StreamSchedule::processOneEventAsync().
void edm::WorkerManager::processOneOccurrenceAsync | ( | WaitingTaskHolder | task, |
typename T::TransitionInfoType & | info, | ||
ServiceToken const & | token, | ||
StreamID | streamID, | ||
typename T::Context const * | topContext, | ||
U const * | context | ||
) |
Definition at line 108 of file WorkerManager.h.
References visDQMUpload::context, info(), eostools::move(), 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 133 of file WorkerManager.cc.
References allWorkers_, edm::for_all(), and edm::Worker::reset().
Referenced by edm::StreamSchedule::processOneStreamAsync(), and setupResolvers().
void edm::WorkerManager::setupOnDemandSystem | ( | EventTransitionInfo const & | info | ) |
Definition at line 150 of file WorkerManager.cc.
References info(), edm::UnscheduledCallProducer::setEventTransitionInfo(), and unscheduled_.
Referenced by edm::StreamSchedule::processOneEventAsync(), and edm::SecondaryEventProvider::setupPileUpEvent().
void edm::WorkerManager::setupResolvers | ( | Principal & | principal | ) |
Definition at line 141 of file WorkerManager.cc.
References allWorkers_, edm::UnscheduledCallProducer::auxiliary(), submitPVResolutionJobs::config, SiStripBadComponentsDQMServiceTemplate_cfg::ep, lastSetupEventPrincipal_, resetAll(), 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(), deleteModuleIfExists(), endJob(), endStream(), resetAll(), and setupResolvers().
|
private |
Definition at line 104 of file WorkerManager.h.
Referenced by setupResolvers().
|
private |
Definition at line 103 of file WorkerManager.h.
Referenced by addToUnscheduledWorkers(), deleteModuleIfExists(), processAccumulatorsAsync(), processOneOccurrenceAsync(), setupOnDemandSystem(), and setupResolvers().
|
private |
Definition at line 100 of file WorkerManager.h.
Referenced by deleteModuleIfExists(), and getWorker().