1 #ifndef FWCore_Framework_stream_EDAnalyzerAdaptor_h 2 #define FWCore_Framework_stream_EDAnalyzerAdaptor_h 43 template <
typename ABase,
typename ModType>
48 template <
typename ModType>
61 typename T::GlobalCache
const*
dummy =
nullptr;
63 typename T::InputProcessBlockCache
const* dummyInputProcessBlockCacheImpl =
nullptr;
129 if constexpr (T::HasAbility::kWatchProcessBlock) {
138 if constexpr (T::HasAbility::kInputProcessBlockCache) {
147 if constexpr (T::HasAbility::kWatchProcessBlock) {
160 Run const& cnstR = r;
254 template <
typename ModType>
257 auto module = std::make_unique<Adaptor>(
pset);
258 return std::unique_ptr<Base>(
module.release());
static void endLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iContext)
void streamEndRunSummary(EDAnalyzerBase *iProd, edm::Run const &iRun, edm::EventSetup const &iES) final
static void beginProcessBlock(edm::ProcessBlock const &iProcessBlock, typename T::GlobalCache *iGC)
static void beginRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iRC, std::shared_ptr< typename T::RunSummaryCache > &oCache)
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
static void fillDescriptions(ConfigurationDescriptions &descriptions)
impl::choose_unique_ptr< typename T::InputProcessBlockCache >::type m_inputProcessBlocks
void setConsumer(EDConsumerBase const *iConsumer)
std::unique_ptr< G > makeInputProcessBlockCacheImpl(G const *)
static void endRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iContext)
void doBeginRun(RunTransitionInfo const &info, ModuleCallingContext const *mcc) final
void deleteModulesEarly()
static std::unique_ptr< Base > makeModule(ParameterSet const &pset)
static void beginRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::GlobalCache const *iGC, std::shared_ptr< typename T::RunCache const > &oCache)
bool wantsInputProcessBlocks() const final
RunPrincipal const & runPrincipal() const
void streamEndLuminosityBlockSummary(EDAnalyzerBase *iProd, edm::LuminosityBlock const &iLumi, edm::EventSetup const &iES) final
void preallocLumis(unsigned int iNLumis) final
static void streamEndRunSummary(B *iProd, edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunSummaryCache *iCache)
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
void doEndRun(RunTransitionInfo const &info, ModuleCallingContext const *mcc) final
void doBeginProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
static void set(B *iProd, typename T::RunCache const *iCache)
void setupLuminosityBlock(EDAnalyzerBase *iProd, LuminosityBlockIndex iIndex) final
bool wantsGlobalLuminosityBlocks() const final
static void beginLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::RunContext const *iRC, std::shared_ptr< typename T::LuminosityBlockCache const > &oCache)
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
EDAnalyzerAdaptor< ModType > Type
static void beginLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iRC, std::shared_ptr< typename T::LuminosityBlockSummaryCache > &oCache)
void doAccessInputProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
void createStreamModules(T iFunc)
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
const EDConsumerBase * consumer() const
ESResolverIndex const * esGetTokenIndices(edm::Transition iTrans) const
void setConsumer(EDConsumerBase const *iConsumer)
const ModuleDescription & moduleDescription() const
impl::choose_mutex< typename T::RunSummaryCache >::type m_runSummaryLock
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
std::unique_ptr< T > type
void doRespondToCloseOutputFile() final
EDAnalyzerAdaptor(edm::ParameterSet const &iPSet)
void selectInputProcessBlocks(ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase) final
void setupStreamModules() final
static void set(B *iProd, typename T::LuminosityBlockCache const *iCache)
void preallocRuns(unsigned int iNRuns) final
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
static void endJob(typename T::GlobalCache *iCache)
static void streamEndLuminosityBlockSummary(B *iProd, edm::LuminosityBlock const &iLumi, edm::EventSetup const &iES, typename T::LuminosityBlockSummaryCache *iCache)
void doEndProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
~EDAnalyzerAdaptor() override
static void globalEndRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iContext, typename T::RunSummaryCache *iCache)
edm::stream::EDAnalyzerAdaptorBase Base
bool wantsProcessBlocks() const final
impl::choose_mutex< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaryLock
LuminosityBlockIndex index() const
static void beginJob(typename T::GlobalCache *iCache)
std::vector< std::shared_ptr< T > > type
void doEndLuminosityBlock(LumiTransitionInfo const &info, ModuleCallingContext const *mcc) final
static void globalEndLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iContext, typename T::LuminosityBlockSummaryCache *iCache)
ParameterSet const * m_pset
const EDAnalyzerAdaptor & operator=(const EDAnalyzerAdaptor &)=delete
bool wantsGlobalRuns() const final
void doBeginLuminosityBlock(LumiTransitionInfo const &info, ModuleCallingContext const *mcc) final
static void set(B *iProd, typename T::GlobalCache const *iCache)
void setupRun(EDAnalyzerBase *iProd, RunIndex iIndex) final
static void endProcessBlock(edm::ProcessBlock const &iProcessBlock, typename T::GlobalCache *iGC)
static void prevalidate(ConfigurationDescriptions &descriptions)