1 #ifndef FWCore_Framework_limited_EDAnalyzerBase_h 2 #define FWCore_Framework_limited_EDAnalyzerBase_h 33 class ModuleCallingContext;
34 class PreallocationConfiguration;
37 class ProductRegistry;
38 class ThinnedAssociationsHelper;
42 template<
typename T>
class ModuleHolderT;
65 virtual bool wantsGlobalRuns()
const =0;
66 virtual bool wantsGlobalLuminosityBlocks()
const =0;
67 virtual bool wantsStreamRuns()
const =0;
68 virtual bool wantsStreamLuminosityBlocks()
const =0;
71 callWhenNewProductsRegistered_ =
func;
100 void doStreamBeginLuminosityBlock(
StreamID id,
104 void doStreamEndLuminosityBlock(
StreamID id,
120 void doRespondToOpenInputFile(
FileBlock const&
fb);
121 void doRespondToCloseInputFile(
FileBlock const& fb);
133 virtual void preallocStreams(
unsigned int);
134 virtual void preallocLumis(
unsigned int);
136 virtual void doBeginStream_(
StreamID id);
137 virtual void doEndStream_(
StreamID id);
145 virtual void doBeginRun_(
Run const& rp,
EventSetup const& c);
146 virtual void doBeginRunSummary_(
Run const& rp,
EventSetup const& c);
147 virtual void doEndRunSummary_(
Run const& rp,
EventSetup const& c);
158 moduleDescription_ = md;
void registerProductsAndCallbacks(ProductRegistry *iReg) override
ModuleDescription moduleDescription_
ModuleDescription const & moduleDescription() const
void preActionBeforeRunEventAsync(WaitingTask *iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const
void preallocate(PreallocationConfiguration const &iPrealloc) override
void doRegisterThinnedAssociations(ProductRegistry const &, ThinnedAssociationsHelper &)
bool hasAccumulator() const
EDAnalyzerBase ModuleType
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void callWhenNewProductsRegistered(std::function< void(BranchDescription const &)> const &func)
void setModuleDescription(ModuleDescription const &md)
std::function< void(BranchDescription const &)> callWhenNewProductsRegistered_
std::string workerType() const
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
LimitedTaskQueue & queue()
unsigned int concurrencyLimit() const