1 #ifndef FWCore_Framework_WorkerT_h 2 #define FWCore_Framework_WorkerT_h 23 class ModuleCallingContext;
24 class ModuleDescription;
25 class ProductResolverIndexAndSkipBit;
26 class ProductRegistry;
27 class ThinnedAssociationsHelper;
30 class WorkerT :
public Worker {
50 std::unordered_multimap<
std::string, std::tuple<TypeID const*, const char*, edm::ProductResolverIndex>>
const& iIndicies)
override;
112 std::map<std::string, ModuleDescription const*>
const& labelsToDesc)
const override {
113 module_->modulesWhoseProductsAreConsumed(modules, preg, labelsToDesc,
module_->moduleDescription().processName());
117 module_->convertCurrentProcessAlias(processName);
121 return module_->consumesInfo();
125 module_->itemsToGet(branchType, indexes);
129 module_->itemsMayGet(branchType, indexes);
137 module_->preActionBeforeRunEventAsync(iTask,iModuleCallingContext,iPrincipal);
bool implDoStreamEnd(StreamID id, RunPrincipal const &rp, EventSetup const &c, ModuleCallingContext const *mcc) override
void resetModuleDescription(ModuleDescription const *)
std::vector< ConsumesInfo > consumesInfo() const override
roAction_t actions[nactions]
void callWorkerStreamEnd(D, StreamID id, RunPrincipal const &rp, EventSetup const &c, ModuleCallingContext const *mcc)
void convertCurrentProcessAlias(std::string const &processName) override
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom(BranchType iType) const final
void implEndJob() override
void updateLookup(BranchType iBranchType, ProductResolverIndexHelper const &) override
void itemsMayGet(BranchType branchType, std::vector< ProductResolverIndexAndSkipBit > &indexes) const override
void setModule(std::shared_ptr< T > iModule)
bool implDoStreamBegin(StreamID id, RunPrincipal const &rp, EventSetup const &c, ModuleCallingContext const *mcc) override
bool implDo(EventPrincipal const &ep, EventSetup const &c, ModuleCallingContext const *mcc) override
Types moduleType() const override
edm::propagate_const< std::shared_ptr< T > > module_
void implRespondToOpenInputFile(FileBlock const &fb) override
bool implDoPrePrefetchSelection(StreamID id, EventPrincipal const &ep, ModuleCallingContext const *mcc) override
void preActionBeforeRunEventAsync(WaitingTask *iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const override
void callWorkerEndStream(D, StreamID)
void implBeginStream(StreamID) override
void modulesWhoseProductsAreConsumed(std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc) const override
TaskQueueAdaptor serializeRunModule() override
void resolvePutIndicies(BranchType iBranchType, std::unordered_multimap< std::string, std::tuple< TypeID const *, const char *, edm::ProductResolverIndex >> const &iIndicies) override
void callWorkerStreamBegin(D, StreamID id, RunPrincipal const &rp, EventSetup const &c, ModuleCallingContext const *mcc)
bool implDoBegin(RunPrincipal const &rp, EventSetup const &c, ModuleCallingContext const *mcc) override
std::vector< ProductResolverIndex > const & itemsShouldPutInEvent() const override
DecomposeProduct< arg, typename Div::arg > D
void implEndStream(StreamID) override
void implBeginJob() override
void implRespondToCloseInputFile(FileBlock const &fb) override
void callWorkerBeginStream(D, StreamID)
void implRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &) override
bool implDoEnd(RunPrincipal const &rp, EventSetup const &c, ModuleCallingContext const *mcc) override
std::string workerType() const override
WorkerT(std::shared_ptr< T >, ModuleDescription const &, ExceptionToActionTable const *actions)
void itemsToGet(BranchType branchType, std::vector< ProductResolverIndexAndSkipBit > &indexes) const override
def branchType(schema, name)