#include <Worker.h>
Public Types | |
enum | State { Ready, Pass, Fail, Exception } |
enum | Types { kAnalyzer, kFilter, kProducer, kOutputModule } |
Public Member Functions | |
void | beginJob () |
void | beginStream (StreamID id, StreamContext &streamContext) |
void | clearCounters () |
virtual std::vector< ConsumesInfo > | consumesInfo () const =0 |
ModuleDescription const * | descPtr () const |
ModuleDescription const & | description () const |
template<typename T > | |
bool | doWork (typename T::MyPrincipal &, EventSetup const &c, StreamID stream, ParentContext const &parentContext, typename T::Context const *context) |
void | endJob () |
void | endStream (StreamID id, StreamContext &streamContext) |
virtual void | modulesDependentUpon (std::vector< const char * > &oModuleLabels) const =0 |
virtual void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc) const =0 |
virtual Types | moduleType () const =0 |
Worker & | operator= (Worker const &)=delete |
void | pathFinished (EventPrincipal &) |
void | postDoEvent (EventPrincipal &) |
void | postForkReacquireResources (unsigned int iChildIndex, unsigned int iNumberOfChildren) |
void | preForkReleaseResources () |
void | registerThinnedAssociations (ProductRegistry const ®istry, ThinnedAssociationsHelper &helper) |
void | reset () |
void | respondToCloseInputFile (FileBlock const &fb) |
void | respondToOpenInputFile (FileBlock const &fb) |
void | setActivityRegistry (std::shared_ptr< ActivityRegistry > areg) |
void | setEarlyDeleteHelper (EarlyDeleteHelper *iHelper) |
State | state () const |
int | timesExcept () const |
int | timesFailed () const |
int | timesPass () const |
int | timesPassed () const |
int | timesRun () const |
int | timesVisited () const |
virtual void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)=0 |
Worker (ModuleDescription const &iMD, ExceptionToActionTable const *iActions) | |
Worker (Worker const &)=delete | |
virtual | ~Worker () |
Private Member Functions | |
virtual void | implPostForkReacquireResources (unsigned int iChildIndex, unsigned int iNumberOfChildren)=0 |
virtual void | implPreForkReleaseResources ()=0 |
virtual void | implRegisterThinnedAssociations (ProductRegistry const &, ThinnedAssociationsHelper &)=0 |
virtual void | implRespondToCloseInputFile (FileBlock const &fb)=0 |
virtual void | implRespondToOpenInputFile (FileBlock const &fb)=0 |
virtual void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const =0 |
virtual void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const =0 |
virtual std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const =0 |
Private Attributes | |
ExceptionToActionTable const * | actions_ |
std::shared_ptr< ActivityRegistry > | actReg_ |
std::shared_ptr< cms::Exception > | cached_exception_ |
EarlyDeleteHelper * | earlyDeleteHelper_ |
ModuleCallingContext | moduleCallingContext_ |
State | state_ |
int | timesExcept_ |
int | timesFailed_ |
int | timesPassed_ |
int | timesRun_ |
int | timesVisited_ |
Friends | |
template<typename O > | |
class | workerhelper::CallImpl |
enum edm::Worker::State |
Enumerator | |
---|---|
Ready | |
Pass | |
Fail | |
Exception |
enum edm::Worker::Types |
Enumerator | |
---|---|
kAnalyzer | |
kFilter | |
kProducer | |
kOutputModule |
edm::Worker::Worker | ( | ModuleDescription const & | iMD, |
ExceptionToActionTable const * | iActions | ||
) |
Definition at line 71 of file Worker.cc.
|
delete |
|
inlineprotected |
void edm::Worker::beginJob | ( | void | ) |
Definition at line 104 of file Worker.cc.
References actReg_, cms::Exception::addContext(), description(), Exception, implBeginJob(), edm::ModuleDescription::moduleLabel(), edm::ModuleDescription::moduleName(), state_, and edm::convertException::wrap().
Referenced by edm::WorkerManager::beginJob(), and edm::GlobalSchedule::replaceModule().
void edm::Worker::beginStream | ( | StreamID | id, |
StreamContext & | streamContext | ||
) |
Definition at line 136 of file Worker.cc.
References actReg_, cms::Exception::addContext(), description(), Exception, implBeginStream(), edm::LuminosityBlockIndex::invalidLuminosityBlockIndex(), edm::RunIndex::invalidRunIndex(), edm::StreamContext::kBeginStream, edm::ModuleCallingContext::kRunning, moduleCallingContext_, edm::ModuleDescription::moduleLabel(), edm::ModuleDescription::moduleName(), edm::StreamContext::setEventID(), edm::StreamContext::setLuminosityBlockIndex(), edm::StreamContext::setRunIndex(), edm::ModuleCallingContext::setState(), edm::StreamContext::setTimestamp(), edm::StreamContext::setTransition(), state_, and edm::convertException::wrap().
Referenced by edm::StreamSchedule::replaceModule().
|
inline |
Definition at line 121 of file Worker.h.
References timesExcept_, timesFailed_, timesPassed_, timesRun_, and timesVisited_.
Referenced by edm::StreamSchedule::clearCounters().
|
pure virtual |
Implemented in edm::WorkerT< T >.
Referenced by edm::PathsAndConsumesOfModules::doConsumesInfo().
|
inline |
Definition at line 100 of file Worker.h.
References moduleCallingContext_, and edm::ModuleCallingContext::moduleDescription().
|
inline |
Definition at line 99 of file Worker.h.
References moduleCallingContext_, and edm::ModuleCallingContext::moduleDescription().
Referenced by edm::UnscheduledCallProducer::addWorker(), beginJob(), beginStream(), endJob(), endStream(), edm::fillModuleInPathSummary(), edm::StreamSchedule::fillWorkers(), and edm::fillWorkerSummaryAux().
bool edm::Worker::doWork | ( | typename T::MyPrincipal & | ep, |
EventSetup const & | c, | ||
StreamID | stream, | ||
ParentContext const & | parentContext, | ||
typename T::Context const * | context | ||
) |
Definition at line 399 of file Worker.h.
References alignCSCRings::action, actions_, actReg_, cached_exception_, cms::Exception::category(), Exception, Fail, edm::exception_actions::FailPath, edm::ExceptionToActionTable::find(), edm::ModuleCallingContext::getTopModuleCallingContext(), edm::exception_actions::IgnoreCompletely, edm::PathContext::isEndPath(), itemsToGetFromEvent(), edm::ParentContext::kPlaceInPath, edm::ModuleCallingContext::kRunning, moduleCallingContext_, Pass, edm::PlaceInPathContext::pathContext(), edm::ModuleCallingContext::placeInPathContext(), edm::printCmsExceptionWarning(), edm::ProductHolderIndexAmbiguous, Ready, edm::exception_actions::Rethrow, edm::ModuleCallingContext::setState(), edm::exception_actions::SkipEvent, state_, timesExcept_, timesFailed_, timesPassed_, timesRun_, timesVisited_, edm::ModuleCallingContext::type(), and edm::convertException::wrap().
Referenced by edm::WorkerInPath::runWorker().
void edm::Worker::endJob | ( | void | ) |
Definition at line 120 of file Worker.cc.
References actReg_, cms::Exception::addContext(), description(), Exception, implEndJob(), edm::ModuleDescription::moduleLabel(), edm::ModuleDescription::moduleName(), state_, and edm::convertException::wrap().
void edm::Worker::endStream | ( | StreamID | id, |
StreamContext & | streamContext | ||
) |
Definition at line 160 of file Worker.cc.
References actReg_, cms::Exception::addContext(), description(), Exception, implEndStream(), edm::LuminosityBlockIndex::invalidLuminosityBlockIndex(), edm::RunIndex::invalidRunIndex(), edm::StreamContext::kEndStream, edm::ModuleCallingContext::kRunning, moduleCallingContext_, edm::ModuleDescription::moduleLabel(), edm::ModuleDescription::moduleName(), edm::StreamContext::setEventID(), edm::StreamContext::setLuminosityBlockIndex(), edm::StreamContext::setRunIndex(), edm::ModuleCallingContext::setState(), edm::StreamContext::setTimestamp(), edm::StreamContext::setTransition(), state_, and edm::convertException::wrap().
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
Referenced by beginJob().
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
Referenced by beginStream().
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
Referenced by edm::workerhelper::CallImpl< OccurrenceTraits< EventPrincipal, BranchActionStreamBegin > >::call().
|
protectedpure virtual |
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
|
protectedpure virtual |
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
|
protectedpure virtual |
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
|
protectedpure virtual |
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
Referenced by endJob().
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
Referenced by endStream().
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
Referenced by postForkReacquireResources().
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
Referenced by preForkReleaseResources().
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
Referenced by registerThinnedAssociations().
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
Referenced by respondToCloseInputFile().
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
Referenced by respondToOpenInputFile().
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
|
privatepure virtual |
Implemented in edm::WorkerT< T >.
Referenced by doWork().
|
pure virtual |
Implemented in edm::WorkerT< T >.
|
pure virtual |
Implemented in edm::WorkerT< T >.
|
pure virtual |
Implemented in edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, edm::WorkerT< T >, and edm::WorkerT< T >.
Referenced by edm::WorkerManager::addToUnscheduledWorkers(), and edm::StreamSchedule::fillWorkers().
void edm::Worker::pathFinished | ( | EventPrincipal & | iEvent | ) |
Definition at line 184 of file Worker.cc.
References earlyDeleteHelper_, and edm::EarlyDeleteHelper::pathFinished().
void edm::Worker::postDoEvent | ( | EventPrincipal & | iEvent | ) |
Definition at line 189 of file Worker.cc.
References earlyDeleteHelper_, and edm::EarlyDeleteHelper::moduleRan().
Referenced by edm::WorkerT< T >::implDo().
|
inline |
Definition at line 91 of file Worker.h.
References implPostForkReacquireResources().
Referenced by edm::Schedule::postForkReacquireResources().
|
inline |
Definition at line 90 of file Worker.h.
References implPreForkReleaseResources().
Referenced by edm::Schedule::preForkReleaseResources().
|
inline |
Definition at line 92 of file Worker.h.
References implRegisterThinnedAssociations().
|
inline |
Definition at line 94 of file Worker.h.
Referenced by edm::WorkerManager::resetAll().
|
protected |
Definition at line 98 of file Worker.cc.
References moduleCallingContext_, edm::ModuleCallingContext::parent(), edm::ModuleCallingContext::previousModuleOnThread(), edm::ModuleCallingContext::state(), and groupFilesInBlocks::temp.
Referenced by edm::WorkerT< T >::setModule().
|
inline |
Definition at line 88 of file Worker.h.
References implRespondToCloseInputFile().
Referenced by edm::Schedule::respondToCloseInputFile().
|
inline |
Definition at line 87 of file Worker.h.
References implRespondToOpenInputFile().
Referenced by edm::Schedule::respondToOpenInputFile().
void edm::Worker::setActivityRegistry | ( | std::shared_ptr< ActivityRegistry > | areg | ) |
void edm::Worker::setEarlyDeleteHelper | ( | EarlyDeleteHelper * | iHelper | ) |
|
inline |
|
inline |
Definition at line 129 of file Worker.h.
References timesExcept_.
Referenced by edm::fillWorkerSummaryAux().
|
inline |
Definition at line 128 of file Worker.h.
References timesFailed_.
Referenced by edm::fillWorkerSummaryAux().
|
inline |
|
inline |
Definition at line 127 of file Worker.h.
References timesPassed_.
Referenced by edm::fillWorkerSummaryAux(), and timesPass().
|
inline |
Definition at line 125 of file Worker.h.
References timesRun_.
Referenced by edm::fillWorkerSummaryAux().
|
inline |
Definition at line 126 of file Worker.h.
References timesVisited_.
Referenced by edm::fillWorkerSummaryAux().
|
pure virtual |
Implemented in edm::WorkerT< T >.
Referenced by edm::Schedule::changeModule().
|
protectedpure virtual |
Implemented in edm::WorkerT< T >.
|
friend |
|
private |
|
private |
Definition at line 191 of file Worker.h.
Referenced by activityRegistry(), beginJob(), beginStream(), doWork(), endJob(), endStream(), and setActivityRegistry().
|
private |
|
private |
Definition at line 193 of file Worker.h.
Referenced by pathFinished(), postDoEvent(), and setEarlyDeleteHelper().
|
private |
Definition at line 186 of file Worker.h.
Referenced by beginStream(), descPtr(), description(), doWork(), endStream(), and resetModuleDescription().
|
private |
Definition at line 184 of file Worker.h.
Referenced by beginJob(), beginStream(), doWork(), endJob(), endStream(), reset(), and state().
|
private |
Definition at line 183 of file Worker.h.
Referenced by clearCounters(), doWork(), and timesExcept().
|
private |
Definition at line 182 of file Worker.h.
Referenced by clearCounters(), doWork(), and timesFailed().
|
private |
Definition at line 181 of file Worker.h.
Referenced by clearCounters(), doWork(), and timesPassed().
|
private |
Definition at line 179 of file Worker.h.
Referenced by clearCounters(), doWork(), and timesRun().
|
private |
Definition at line 180 of file Worker.h.
Referenced by clearCounters(), doWork(), and timesVisited().