#include <EventSetupsController.h>
Public Member Functions | |
void | clearComponents () |
bool | doWeNeedToWaitForIOVsToFinish (IOVSyncValue const &) const |
void | endIOVsAsync (edm::WaitingTaskHolder iEndTask) |
std::multimap< ParameterSetID, ESProducerInfo > const & | esproducers () const |
std::multimap< ParameterSetID, ESSourceInfo > const & | essources () const |
void | eventSetupForInstanceAsync (IOVSyncValue const &, WaitingTaskHolder const &taskToStartAfterIOVInit, WaitingTaskList &endIOVWaitingTasks, std::vector< std::shared_ptr< const EventSetupImpl >> &) |
EventSetupsController () | |
EventSetupsController (ModuleTypeResolverBase const *resolver) | |
EventSetupsController (EventSetupsController const &)=delete | |
void | finishConfiguration () |
void | forceCacheClear () |
std::shared_ptr< DataProxyProvider > | getESProducerAndRegisterProcess (ParameterSet const &pset, unsigned subProcessIndex) |
ParameterSet & | getESProducerPSet (ParameterSetID const &psetID, unsigned subProcessIndex) |
std::shared_ptr< EventSetupRecordIntervalFinder > | getESSourceAndRegisterProcess (ParameterSet const &pset, unsigned subProcessIndex) |
bool | hasNonconcurrentFinder () const |
unsigned | indexOfNextProcess () const |
bool | isFirstMatch (ParameterSetID const &psetID, unsigned subProcessIndex, unsigned precedingProcessIndex) const |
bool | isLastMatch (ParameterSetID const &psetID, unsigned subProcessIndex, unsigned precedingProcessIndex) const |
bool | isMatchingESProducer (ParameterSetID const &psetID, unsigned subProcessIndex, unsigned precedingProcessIndex) const |
bool | isMatchingESSource (ParameterSetID const &psetID, unsigned subProcessIndex, unsigned precedingProcessIndex) const |
void | lookForMatches (ParameterSetID const &psetID, unsigned subProcessIndex, unsigned precedingProcessIndex, bool &firstProcessWithThisPSet, bool &precedingHasMatchingPSet) const |
std::shared_ptr< EventSetupProvider > | makeProvider (ParameterSet &, ActivityRegistry *, ParameterSet const *eventSetupPset=nullptr, unsigned int maxConcurrentIOVs=0, bool dumpOptions=false) |
bool | mustFinishConfiguration () const |
EventSetupsController const & | operator= (EventSetupsController const &)=delete |
std::vector< propagate_const< std::shared_ptr< EventSetupProvider > > > const & | providers () const |
void | putESProducer (ParameterSet &pset, std::shared_ptr< DataProxyProvider > const &component, unsigned subProcessIndex) |
void | putESSource (ParameterSet const &pset, std::shared_ptr< EventSetupRecordIntervalFinder > const &component, unsigned subProcessIndex) |
void | runOrQueueEventSetupForInstanceAsync (IOVSyncValue const &, WaitingTaskHolder &taskToStartAfterIOVInit, WaitingTaskList &endIOVWaitingTasks, std::vector< std::shared_ptr< const EventSetupImpl >> &, edm::SerialTaskQueue &queueWhichWaitsForIOVsToFinish, ActivityRegistry *, ServiceToken const &, bool iForceCacheClear=false) |
Private Member Functions | |
void | checkESProducerSharing () |
void | initializeEventSetupRecordIOVQueues () |
Private Attributes | |
std::multimap< ParameterSetID, ESProducerInfo > | esproducers_ |
std::multimap< ParameterSetID, ESSourceInfo > | essources_ |
std::vector< propagate_const< std::unique_ptr< EventSetupRecordIOVQueue > > > | eventSetupRecordIOVQueues_ |
bool | hasNonconcurrentFinder_ = false |
bool | mustFinishConfiguration_ = true |
NumberOfConcurrentIOVs | numberOfConcurrentIOVs_ |
std::vector< propagate_const< std::shared_ptr< EventSetupProvider > > > | providers_ |
ModuleTypeResolverBase const * | typeResolver_ = nullptr |
Description: Manages a group of EventSetups which can share components
Usage: <usage>
Definition at line 82 of file EventSetupsController.h.
edm::eventsetup::EventSetupsController::EventSetupsController | ( | ) |
Definition at line 41 of file EventSetupsController.cc.
|
explicit |
Definition at line 42 of file EventSetupsController.cc.
|
delete |
|
private |
Definition at line 403 of file EventSetupsController.cc.
References providers_, and typeResolver_.
Referenced by finishConfiguration().
void edm::eventsetup::EventSetupsController::clearComponents | ( | ) |
Definition at line 248 of file EventSetupsController.cc.
References esproducers_, and essources_.
Referenced by finishConfiguration().
bool edm::eventsetup::EventSetupsController::doWeNeedToWaitForIOVsToFinish | ( | IOVSyncValue const & | syncValue | ) | const |
Definition at line 179 of file EventSetupsController.cc.
References hasNonconcurrentFinder(), and providers_.
Referenced by runOrQueueEventSetupForInstanceAsync().
void edm::eventsetup::EventSetupsController::endIOVsAsync | ( | edm::WaitingTaskHolder | iEndTask | ) |
Definition at line 44 of file EventSetupsController.cc.
References eventSetupRecordIOVQueues_.
Referenced by edm::eventsetup::SynchronousEventSetupsController::~SynchronousEventSetupsController().
|
inline |
Definition at line 172 of file EventSetupsController.h.
References esproducers_.
|
inline |
Definition at line 174 of file EventSetupsController.h.
References essources_.
void edm::eventsetup::EventSetupsController::eventSetupForInstanceAsync | ( | IOVSyncValue const & | syncValue, |
WaitingTaskHolder const & | taskToStartAfterIOVInit, | ||
WaitingTaskList & | endIOVWaitingTasks, | ||
std::vector< std::shared_ptr< const EventSetupImpl >> & | eventSetupImpls | ||
) |
Definition at line 140 of file EventSetupsController.cc.
References eventSetupRecordIOVQueues_, finishConfiguration(), and providers_.
Referenced by runOrQueueEventSetupForInstanceAsync(), and edm::eventsetup::synchronousEventSetupForInstance().
void edm::eventsetup::EventSetupsController::finishConfiguration | ( | ) |
Definition at line 72 of file EventSetupsController.cc.
References checkESProducerSharing(), edm::eventsetup::NumberOfConcurrentIOVs::clear(), clearComponents(), edm::eventsetup::NumberOfConcurrentIOVs::fillRecordsNotAllowingConcurrentIOVs(), hasNonconcurrentFinder_, initializeEventSetupRecordIOVQueues(), mustFinishConfiguration_, numberOfConcurrentIOVs_, and providers_.
Referenced by eventSetupForInstanceAsync().
void edm::eventsetup::EventSetupsController::forceCacheClear | ( | ) |
Definition at line 190 of file EventSetupsController.cc.
References providers_.
Referenced by runOrQueueEventSetupForInstanceAsync().
std::shared_ptr< DataProxyProvider > edm::eventsetup::EventSetupsController::getESProducerAndRegisterProcess | ( | ParameterSet const & | pset, |
unsigned | subProcessIndex | ||
) |
Definition at line 196 of file EventSetupsController.cc.
References bookConverter::elements, esproducers_, edm::isTransientEqual(), and muonDTDigis_cfi::pset.
Referenced by edm::eventsetup::ModuleMakerTraits::getComponentAndRegisterProcess().
ParameterSet & edm::eventsetup::EventSetupsController::getESProducerPSet | ( | ParameterSetID const & | psetID, |
unsigned | subProcessIndex | ||
) |
Definition at line 387 of file EventSetupsController.cc.
References bookConverter::elements, esproducers_, Exception, spr::find(), and edm::errors::LogicError.
Referenced by edm::eventsetup::EventSetupProvider::checkESProducerSharing().
std::shared_ptr< EventSetupRecordIntervalFinder > edm::eventsetup::EventSetupsController::getESSourceAndRegisterProcess | ( | ParameterSet const & | pset, |
unsigned | subProcessIndex | ||
) |
Definition at line 222 of file EventSetupsController.cc.
References bookConverter::elements, essources_, edm::isTransientEqual(), and muonDTDigis_cfi::pset.
Referenced by edm::eventsetup::SourceMakerTraits::getComponentAndRegisterProcess().
|
inline |
Definition at line 176 of file EventSetupsController.h.
References hasNonconcurrentFinder_.
Referenced by doWeNeedToWaitForIOVsToFinish().
|
inline |
Definition at line 148 of file EventSetupsController.h.
References providers_.
Referenced by edm::eventsetup::ModuleMakerTraits::getComponentAndRegisterProcess(), edm::eventsetup::SourceMakerTraits::getComponentAndRegisterProcess(), edm::eventsetup::ModuleMakerTraits::putComponent(), and edm::eventsetup::SourceMakerTraits::putComponent().
|
private |
Definition at line 443 of file EventSetupsController.cc.
References edm::eventsetup::EventSetupRecordIOVQueue::addRecProvider(), eventSetupRecordIOVQueues_, crabWrapper::key, relativeConstraints::keys, edm::eventsetup::NumberOfConcurrentIOVs::numberOfConcurrentIOVs(), numberOfConcurrentIOVs_, and providers_.
Referenced by finishConfiguration().
bool edm::eventsetup::EventSetupsController::isFirstMatch | ( | ParameterSetID const & | psetID, |
unsigned | subProcessIndex, | ||
unsigned | precedingProcessIndex | ||
) | const |
Definition at line 287 of file EventSetupsController.cc.
References bookConverter::elements, esproducers_, Exception, spr::find(), and edm::errors::LogicError.
Referenced by edm::eventsetup::EventSetupProvider::checkESProducerSharing().
bool edm::eventsetup::EventSetupsController::isLastMatch | ( | ParameterSetID const & | psetID, |
unsigned | subProcessIndex, | ||
unsigned | precedingProcessIndex | ||
) | const |
Definition at line 312 of file EventSetupsController.cc.
References bookConverter::elements, esproducers_, Exception, spr::find(), and edm::errors::LogicError.
Referenced by edm::eventsetup::EventSetupProvider::checkESProducerSharing().
bool edm::eventsetup::EventSetupsController::isMatchingESProducer | ( | ParameterSetID const & | psetID, |
unsigned | subProcessIndex, | ||
unsigned | precedingProcessIndex | ||
) | const |
Definition at line 362 of file EventSetupsController.cc.
References bookConverter::elements, esproducers_, Exception, spr::find(), and edm::errors::LogicError.
Referenced by edm::eventsetup::EventSetupProvider::doRecordsMatch().
bool edm::eventsetup::EventSetupsController::isMatchingESSource | ( | ParameterSetID const & | psetID, |
unsigned | subProcessIndex, | ||
unsigned | precedingProcessIndex | ||
) | const |
Definition at line 337 of file EventSetupsController.cc.
References bookConverter::elements, essources_, Exception, spr::find(), and edm::errors::LogicError.
Referenced by edm::eventsetup::EventSetupProvider::doRecordsMatch().
void edm::eventsetup::EventSetupsController::lookForMatches | ( | ParameterSetID const & | psetID, |
unsigned | subProcessIndex, | ||
unsigned | precedingProcessIndex, | ||
bool & | firstProcessWithThisPSet, | ||
bool & | precedingHasMatchingPSet | ||
) | const |
Definition at line 253 of file EventSetupsController.cc.
References bookConverter::elements, esproducers_, Exception, spr::find(), and edm::errors::LogicError.
Referenced by edm::eventsetup::EventSetupProvider::checkESProducerSharing().
std::shared_ptr< EventSetupProvider > edm::eventsetup::EventSetupsController::makeProvider | ( | ParameterSet & | iPSet, |
ActivityRegistry * | activityRegistry, | ||
ParameterSet const * | eventSetupPset = nullptr , |
||
unsigned int | maxConcurrentIOVs = 0 , |
||
bool | dumpOptions = false |
||
) |
Definition at line 50 of file EventSetupsController.cc.
References testHGCalDigi_cfg::dumpOptions, edm::eventsetup::fillEventSetupProvider(), edm::eventsetup::makeEventSetupProvider(), numberOfConcurrentIOVs_, providers_, edm::eventsetup::NumberOfConcurrentIOVs::readConfigurationParameters(), and typeResolver_.
Referenced by edm::eventsetup::SynchronousEventSetupsController::makeProvider(), and edm::SubProcess::SubProcess().
|
inline |
Definition at line 177 of file EventSetupsController.h.
References mustFinishConfiguration_.
|
delete |
|
inline |
Definition at line 170 of file EventSetupsController.h.
References providers_.
void edm::eventsetup::EventSetupsController::putESProducer | ( | ParameterSet & | pset, |
std::shared_ptr< DataProxyProvider > const & | component, | ||
unsigned | subProcessIndex | ||
) |
Definition at line 213 of file EventSetupsController.cc.
References esproducers_, and muonDTDigis_cfi::pset.
Referenced by edm::eventsetup::ModuleMakerTraits::putComponent().
void edm::eventsetup::EventSetupsController::putESSource | ( | ParameterSet const & | pset, |
std::shared_ptr< EventSetupRecordIntervalFinder > const & | component, | ||
unsigned | subProcessIndex | ||
) |
Definition at line 239 of file EventSetupsController.cc.
References essources_, and muonDTDigis_cfi::pset.
Referenced by edm::eventsetup::SourceMakerTraits::putComponent().
void edm::eventsetup::EventSetupsController::runOrQueueEventSetupForInstanceAsync | ( | IOVSyncValue const & | iSync, |
WaitingTaskHolder & | taskToStartAfterIOVInit, | ||
WaitingTaskList & | endIOVWaitingTasks, | ||
std::vector< std::shared_ptr< const EventSetupImpl >> & | eventSetupImpls, | ||
edm::SerialTaskQueue & | queueWhichWaitsForIOVsToFinish, | ||
ActivityRegistry * | actReg, | ||
ServiceToken const & | iToken, | ||
bool | iForceCacheClear = false |
||
) |
Definition at line 98 of file EventSetupsController.cc.
References CMS_SA_ALLOW, edm::SendSourceTerminationSignalIfException::completedSuccessfully(), doWeNeedToWaitForIOVsToFinish(), eventSetupForInstanceAsync(), forceCacheClear(), edm::WaitingTaskHolder::group(), watchdog::group, edm::ServiceWeakToken::lock(), and TrackValidation_cff::task.
|
private |
Definition at line 201 of file EventSetupsController.h.
Referenced by clearComponents(), esproducers(), getESProducerAndRegisterProcess(), getESProducerPSet(), isFirstMatch(), isLastMatch(), isMatchingESProducer(), lookForMatches(), and putESProducer().
|
private |
Definition at line 202 of file EventSetupsController.h.
Referenced by clearComponents(), essources(), getESSourceAndRegisterProcess(), isMatchingESSource(), and putESSource().
|
private |
Definition at line 189 of file EventSetupsController.h.
Referenced by endIOVsAsync(), eventSetupForInstanceAsync(), and initializeEventSetupRecordIOVQueues().
|
private |
Definition at line 206 of file EventSetupsController.h.
Referenced by finishConfiguration(), and hasNonconcurrentFinder().
|
private |
Definition at line 207 of file EventSetupsController.h.
Referenced by finishConfiguration(), and mustFinishConfiguration().
|
private |
Definition at line 185 of file EventSetupsController.h.
Referenced by finishConfiguration(), initializeEventSetupRecordIOVQueues(), and makeProvider().
|
private |
Definition at line 184 of file EventSetupsController.h.
Referenced by checkESProducerSharing(), doWeNeedToWaitForIOVsToFinish(), eventSetupForInstanceAsync(), finishConfiguration(), forceCacheClear(), indexOfNextProcess(), initializeEventSetupRecordIOVQueues(), makeProvider(), and providers().
|
private |
Definition at line 204 of file EventSetupsController.h.
Referenced by checkESProducerSharing(), and makeProvider().