1 #ifndef FWCore_Framework_global_EDAnalyzerBase_h 2 #define FWCore_Framework_global_EDAnalyzerBase_h 32 class ModuleCallingContext;
33 class PreallocationConfiguration;
36 class ProductRegistry;
37 class ThinnedAssociationsHelper;
41 template<
typename T>
class ModuleHolderT;
64 virtual bool wantsGlobalRuns()
const =0;
65 virtual bool wantsGlobalLuminosityBlocks()
const =0;
66 virtual bool wantsStreamRuns()
const =0;
67 virtual bool wantsStreamLuminosityBlocks()
const =0;
70 callWhenNewProductsRegistered_ =
func;
94 void doStreamBeginLuminosityBlock(
StreamID id,
98 void doStreamEndLuminosityBlock(
StreamID id,
114 void doRespondToOpenInputFile(
FileBlock const&
fb);
115 void doRespondToCloseInputFile(
FileBlock const& fb);
127 virtual void preallocStreams(
unsigned int);
128 virtual void preallocLumis(
unsigned int);
130 virtual void doBeginStream_(
StreamID id);
131 virtual void doEndStream_(
StreamID id);
139 virtual void doBeginRun_(
Run const& rp,
EventSetup const& c);
140 virtual void doBeginRunSummary_(
Run const& rp,
EventSetup const& c);
141 virtual void doEndRunSummary_(
Run const& rp,
EventSetup const& c);
152 moduleDescription_ = md;
void registerProductsAndCallbacks(ProductRegistry *iReg) override
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
void callWhenNewProductsRegistered(std::function< void(BranchDescription const &)> const &func)
void preallocate(PreallocationConfiguration const &iPrealloc) override
void doRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &)
std::function< void(BranchDescription const &)> callWhenNewProductsRegistered_
ModuleDescription moduleDescription_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
EDAnalyzerBase ModuleType
std::string workerType() const
void preActionBeforeRunEventAsync(WaitingTask *iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const
void setModuleDescription(ModuleDescription const &md)
bool hasAccumulator() const
ModuleDescription const & moduleDescription() const