1 #ifndef FWCore_Framework_one_EDProducerBase_h 2 #define FWCore_Framework_one_EDProducerBase_h 35 class ModuleCallingContext;
36 class PreallocationConfiguration;
37 class ActivityRegistry;
38 class ThinnedAssociationsHelper;
39 class EventForTransformer;
40 class ServiceWeakToken;
85 size_t iTransformIndex,
SharedResourcesAcquirer & sharedResourcesAcquirer()
virtual SerialTaskQueue * globalLuminosityBlocksQueue()
virtual void preallocLumis(unsigned int)
void doEndLuminosityBlock(LumiTransitionInfo const &, ModuleCallingContext const *)
virtual void preallocRuns(unsigned int)
static void fillDescriptions(ConfigurationDescriptions &descriptions)
static const std::string & baseType()
unsigned int ProductResolverIndex
virtual void doEndLuminosityBlock_(LuminosityBlock const &lbp, EventSetup const &c)
std::string workerType() const
virtual void transformAsync_(WaitingTaskHolder iTask, std::size_t iIndex, edm::EventForTransformer &iEvent, edm::ActivityRegistry *iAct, ServiceWeakToken const &iToken) const noexcept
virtual void doBeginRunProduce_(Run &rp, EventSetup const &c)
virtual void doEndRunProduce_(Run &rp, EventSetup const &c)
ModuleDescription const & moduleDescription() const
void doAccessInputProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *)
virtual SerialTaskQueue * globalRunsQueue()
void registerProducts(ProducerBase *, ProductRegistry *, ModuleDescription const &)
virtual size_t transformIndex_(edm::BranchDescription const &iBranch) const noexcept
virtual void doBeginProcessBlockProduce_(ProcessBlock &)
virtual bool wantsInputProcessBlocks() const noexcept=0
virtual void doEndProcessBlockProduce_(ProcessBlock &)
~EDProducerBase() override
virtual bool hasAccumulator() const noexcept
ParentageID previousParentageId_
virtual bool wantsGlobalRuns() const noexcept=0
virtual bool wantsProcessBlocks() const noexcept=0
void doEndRun(RunTransitionInfo const &, ModuleCallingContext const *)
void doBeginRun(RunTransitionInfo const &, ModuleCallingContext const *)
virtual void doEndLuminosityBlockProduce_(LuminosityBlock &lbp, EventSetup const &c)
bool doEvent(EventTransitionInfo const &, ActivityRegistry *, ModuleCallingContext const *)
void registerProductsAndCallbacks(EDProducerBase *module, ProductRegistry *reg)
void doRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &)
void doRespondToCloseInputFile(FileBlock const &)
virtual void clearInputProcessBlockCaches()
virtual void doEndRun_(Run const &rp, EventSetup const &c)
void doTransformAsync(WaitingTaskHolder iTask, size_t iTransformIndex, EventPrincipal const &iEvent, ActivityRegistry *, ModuleCallingContext, ServiceWeakToken const &) noexcept
bool wantsStreamLuminosityBlocks() const noexcept
virtual bool wantsGlobalLuminosityBlocks() const noexcept=0
virtual void doAccessInputProcessBlock_(ProcessBlock const &)
void doRespondToCloseOutputFile()
bool wantsStreamRuns() const noexcept
virtual void doBeginLuminosityBlock_(LuminosityBlock const &lbp, EventSetup const &c)
virtual void doBeginLuminosityBlockProduce_(LuminosityBlock &lbp, EventSetup const &c)
void doBeginProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *)
virtual void doEndProcessBlock_(ProcessBlock const &)
void doEndProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *)
SharedResourcesAcquirer resourcesAcquirer_
EDProducerBase ModuleType
void doPreallocate(PreallocationConfiguration const &)
virtual void preallocThreads(unsigned int)
virtual ProductResolverIndex transformPrefetch_(std::size_t iIndex) const noexcept
void doBeginLuminosityBlock(LumiTransitionInfo const &, ModuleCallingContext const *)
void setModuleDescription(ModuleDescription const &md)
void doRespondToOpenInputFile(FileBlock const &)
static void prevalidate(ConfigurationDescriptions &descriptions)
bool hasAcquire() const noexcept
virtual void doBeginRun_(Run const &rp, EventSetup const &c)
virtual SharedResourcesAcquirer createAcquirer()
virtual void doBeginProcessBlock_(ProcessBlock const &)
std::vector< BranchID > previousParentage_
ModuleDescription moduleDescription_
virtual void produce(Event &, EventSetup const &)=0
void preActionBeforeRunEventAsync(WaitingTaskHolder, ModuleCallingContext const &, Principal const &) const noexcept