1 #ifndef FWCore_Framework_stream_EDAnalyzerAdaptorBase_h 2 #define FWCore_Framework_stream_EDAnalyzerAdaptorBase_h 45 class ModuleCallingContext;
46 class ModuleProcessName;
47 class ProductResolverIndexHelper;
49 class PreallocationConfiguration;
50 class ProductResolverIndexAndSkipBit;
52 class ThinnedAssociationsHelper;
59 namespace eventsetup {
92 std::
string workerType()
const {
return "WorkerT<EDAnalyzerAdaptorBase>"; }
98 unsigned int iStreamModule = 0;
100 m = iFunc(iStreamModule);
121 std::vector<ModuleProcessName>& modulesInPreviousProcesses,
123 std::map<std::string, ModuleDescription const*>
const& labelsToDesc,
void itemsToGet(BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
void registerProductsAndCallbacks(EDAnalyzerAdaptorBase const *, ProductRegistry *reg)
void doBeginStream(StreamID id)
virtual void setupStreamModules()=0
void preActionBeforeRunEventAsync(WaitingTaskHolder, ModuleCallingContext const &, Principal const &) const noexcept
std::vector< ConsumesInfo > consumesInfo() const
virtual bool wantsStreamLuminosityBlocks() const noexcept=0
virtual void preallocRuns(unsigned int)
virtual void doBeginJob()=0
virtual void doEndProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *)=0
std::vector< EDAnalyzerBase * > m_streamModules
void deleteModulesEarly()
virtual void doEndJob()=0
void doEndStream(StreamID id)
void doPreallocate(PreallocationConfiguration const &)
void updateLookup(BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
void doStreamEndLuminosityBlock(StreamID, LumiTransitionInfo const &, ModuleCallingContext const *)
virtual void doEndRun(RunTransitionInfo const &, ModuleCallingContext const *)=0
virtual bool wantsProcessBlocks() const noexcept=0
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
const EDAnalyzerAdaptorBase & operator=(const EDAnalyzerAdaptorBase &)=delete
virtual void setupLuminosityBlock(EDAnalyzerBase *, LuminosityBlockIndex)=0
void doStreamBeginLuminosityBlock(StreamID, LumiTransitionInfo const &, ModuleCallingContext const *)
void itemsMayGet(BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
virtual void doAccessInputProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *)=0
void doRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &)
void convertCurrentProcessAlias(std::string const &processName)
void createStreamModules(T iFunc)
virtual bool wantsGlobalRuns() const noexcept=0
const EDConsumerBase * consumer() const
const ModuleDescription & moduleDescription() const
virtual bool wantsInputProcessBlocks() const noexcept=0
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom(BranchType) const
virtual void doBeginProcessBlock(ProcessBlockPrincipal const &, ModuleCallingContext const *)=0
bool hasAccumulator() const noexcept
virtual void streamEndLuminosityBlockSummary(EDAnalyzerBase *, edm::LuminosityBlock const &, edm::EventSetup const &)=0
void setModuleDescription(ModuleDescription const &md)
virtual void setupRun(EDAnalyzerBase *, RunIndex)=0
virtual void doEndLuminosityBlock(LumiTransitionInfo const &, ModuleCallingContext const *)=0
void doRespondToOpenInputFile(FileBlock const &)
virtual void doBeginLuminosityBlock(LumiTransitionInfo const &, ModuleCallingContext const *)=0
bool hasAcquire() const noexcept
void doRespondToCloseInputFile(FileBlock const &)
void doStreamBeginRun(StreamID, RunTransitionInfo const &, ModuleCallingContext const *)
virtual bool wantsGlobalLuminosityBlocks() const noexcept=0
virtual void doBeginRun(RunTransitionInfo const &, ModuleCallingContext const *)=0
virtual void preallocLumis(unsigned int)
virtual void doRespondToCloseOutputFile()=0
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector(edm::Transition iTrans) const
virtual void selectInputProcessBlocks(ProductRegistry const &, ProcessBlockHelperBase const &)=0
virtual ~EDAnalyzerAdaptorBase()
virtual bool wantsStreamRuns() const noexcept=0
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, std::string const &processName) const
bool doEvent(EventTransitionInfo const &, ActivityRegistry *, ModuleCallingContext const *)
std::vector< ESResolverIndex > const & esGetTokenIndicesVector(edm::Transition iTrans) const
virtual void streamEndRunSummary(EDAnalyzerBase *, edm::Run const &, edm::EventSetup const &)=0
ModuleDescription moduleDescription_
void doStreamEndRun(StreamID, RunTransitionInfo const &, ModuleCallingContext const *)
std::string workerType() const
void setModuleDescriptionPtr(EDAnalyzerBase *m)