1 #ifndef FWCore_Framework_WorkerT_h 2 #define FWCore_Framework_WorkerT_h 26 class ModuleCallingContext;
27 class ModuleProcessName;
28 class ProductResolverIndexAndSkipBit;
29 class ThinnedAssociationsHelper;
30 class WaitingTaskWithArenaHolder;
33 class WorkerT :
public Worker {
97 size_t iTransformIndex,
131 module_->modulesWhoseProductsAreConsumed(
132 modules, modulesInPreviousProcesses, preg, labelsToDesc,
module_->moduleDescription().processName());
142 module_->itemsToGet(branchType, indexes);
146 module_->itemsMayGet(branchType, indexes);
150 return module_->itemsToGetFrom(iType);
154 return module_->esGetTokenIndicesVector(iTransition);
157 return module_->esGetTokenRecordIndicesVector(iTransition);
162 Principal const& iPrincipal)
const override {
163 module_->preActionBeforeRunEventAsync(iTask, iModuleCallingContext, iPrincipal);
void updateLookup(BranchType iBranchType, ProductResolverIndexHelper const &) final
void itemsToGet(BranchType branchType, std::vector< ProductResolverIndexAndSkipBit > &indexes) const override
void resetModuleDescription(ModuleDescription const *)
bool hasAcquire() const override
bool hasAccumulator() const override
bool implDoEndProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *) override
SerialTaskQueue * globalRunsQueue() final
roAction_t actions[nactions]
unsigned int ProductResolverIndex
SerialTaskQueue * globalLuminosityBlocksQueue() final
void convertCurrentProcessAlias(std::string const &processName) override
void implEndJob() override
std::string workerType() const override
std::vector< ConsumesInfo > consumesInfo() const override
void callWorkerStreamEnd(D, StreamID, RunTransitionInfo const &, ModuleCallingContext const *)
bool wantsStreamLuminosityBlocks() const final
void setModule(std::shared_ptr< T > iModule)
std::vector< ESRecordIndex > const & esRecordsToGetFrom(Transition iTransition) const override
bool implNeedToRunSelection() const final
bool implDoStreamEnd(StreamID, RunTransitionInfo const &, ModuleCallingContext const *) override
constexpr std::shared_ptr< T > & get_underlying_safe(propagate_const< std::shared_ptr< T >> &iP)
bool implDoPrePrefetchSelection(StreamID, EventPrincipal const &, ModuleCallingContext const *) override
bool implDoAccessInputProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *) override
void callWorkerStreamBegin(D, StreamID, RunTransitionInfo const &, ModuleCallingContext const *)
edm::propagate_const< std::shared_ptr< T > > module_
void itemsToGetForSelection(std::vector< ProductResolverIndexAndSkipBit > &) const final
size_t transformIndex(edm::BranchDescription const &) const final
void implRespondToOpenInputFile(FileBlock const &fb) override
void implRespondToCloseOutputFile() override
std::vector< ESProxyIndex > const & esItemsToGetFrom(Transition iTransition) const override
Types moduleType() const override
void callWorkerEndStream(D, StreamID)
void implBeginStream(StreamID) override
void resolvePutIndicies(BranchType iBranchType, std::unordered_multimap< std::string, std::tuple< TypeID const *, const char *, edm::ProductResolverIndex >> const &iIndicies) final
bool implDoStreamBegin(StreamID, RunTransitionInfo const &, ModuleCallingContext const *) override
def template(fileName, svg, replaceme="REPLACEME")
bool wantsInputProcessBlocks() const final
TaskQueueAdaptor serializeRunModule() override
bool wantsGlobalLuminosityBlocks() const final
bool implDoBeginProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *) override
DecomposeProduct< arg, typename Div::arg > D
void implEndStream(StreamID) override
void implDoTransformAsync(WaitingTaskHolder, size_t iTransformIndex, EventPrincipal const &, ParentContext const &, ServiceWeakToken const &) final
void implBeginJob() override
bool wantsProcessBlocks() const final
void implRespondToCloseInputFile(FileBlock const &fb) override
bool implDoEnd(RunTransitionInfo const &, ModuleCallingContext const *) override
void callWorkerBeginStream(D, StreamID)
void implDoAcquire(EventTransitionInfo const &, ModuleCallingContext const *, WaitingTaskWithArenaHolder &) final
void doClearModule() override
ProductResolverIndex itemToGetForTransform(size_t iTransformIndex) const final
bool wantsGlobalRuns() const final
bool wantsStreamRuns() const final
void itemsMayGet(BranchType branchType, std::vector< ProductResolverIndexAndSkipBit > &indexes) const override
void preActionBeforeRunEventAsync(WaitingTaskHolder iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const override
void implRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &) override
bool implDoBegin(RunTransitionInfo const &, ModuleCallingContext const *) override
void modulesWhoseProductsAreConsumed(std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modules, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc) const override
WorkerT(std::shared_ptr< T >, ModuleDescription const &, ExceptionToActionTable const *actions)
void selectInputProcessBlocks(ProductRegistry const &, ProcessBlockHelperBase const &) final
ConcurrencyTypes moduleConcurrencyType() const override
bool implDo(EventTransitionInfo const &, ModuleCallingContext const *) override
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom(BranchType iType) const final