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 noexcept
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 wantsGlobalLuminosityBlocks() const noexcept final
std::vector< ESResolverIndex > const & esItemsToGetFrom(Transition iTransition) const override
bool implDoEndProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *) override
SerialTaskQueue * globalRunsQueue() final
roAction_t actions[nactions]
void implDoTransformAsync(WaitingTaskHolder, size_t iTransformIndex, EventPrincipal const &, ParentContext const &, ServiceWeakToken const &) noexcept final
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 *)
void setModule(std::shared_ptr< T > iModule)
std::vector< ESRecordIndex > const & esRecordsToGetFrom(Transition iTransition) const override
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
ProductResolverIndex itemToGetForTransform(size_t iTransformIndex) const noexcept final
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
void implRespondToOpenInputFile(FileBlock const &fb) override
void implRespondToCloseOutputFile() override
void preActionBeforeRunEventAsync(WaitingTaskHolder iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const noexcept override
Types moduleType() const override
void callWorkerEndStream(D, StreamID)
bool wantsGlobalRuns() const noexcept final
bool hasAcquire() const noexcept override
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
bool implNeedToRunSelection() const noexcept final
def template(fileName, svg, replaceme="REPLACEME")
bool wantsStreamRuns() const noexcept final
TaskQueueAdaptor serializeRunModule() override
bool implDoBeginProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *) override
DecomposeProduct< arg, typename Div::arg > D
void implEndStream(StreamID) override
void implBeginJob() override
void implRespondToCloseInputFile(FileBlock const &fb) override
bool implDoEnd(RunTransitionInfo const &, ModuleCallingContext const *) override
void callWorkerBeginStream(D, StreamID)
bool wantsProcessBlocks() const noexcept final
size_t transformIndex(edm::BranchDescription const &) const noexcept final
void implDoAcquire(EventTransitionInfo const &, ModuleCallingContext const *, WaitingTaskWithArenaHolder &) final
void doClearModule() override
void itemsMayGet(BranchType branchType, std::vector< ProductResolverIndexAndSkipBit > &indexes) const override
void implRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &) override
bool hasAccumulator() const noexcept 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
bool wantsInputProcessBlocks() const noexcept final
WorkerT(std::shared_ptr< T >, ModuleDescription const &, ExceptionToActionTable const *actions)
void selectInputProcessBlocks(ProductRegistry const &, ProcessBlockHelperBase const &) final
bool wantsStreamLuminosityBlocks() const noexcept final
ConcurrencyTypes moduleConcurrencyType() const override
bool implDo(EventTransitionInfo const &, ModuleCallingContext const *) override
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom(BranchType iType) const final