LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
art::EDAnalyzer Class Referenceabstract

#include "EDAnalyzer.h"

Inheritance diagram for art::EDAnalyzer:
art::detail::Analyzer art::detail::LegacyModule art::Observer art::ModuleBase artg4tk::CheckCalorimeterHits artg4tk::CheckDRCalorimeterHits artg4tk::CheckGenParticle artg4tk::CheckHits artg4tk::CheckInteractions artg4tk::CheckPhotonHits artg4tk::CheckProtonProduction artg4tk::CheckTrackerHits caldata::CalWireAna caldata::DumpWires calo::CaloChecker calo::PrintCalorimetry cheat::CheckBackTracking cheat::RecoCheckAna cluster::ClusterAna cluster::ClusterPCA cluster::ClusterTrackAna cluster::DBclusterAna cluster::HoughLineFinderAna ClusteringValidation::ClusteringValidation detsim::DumpOpDetWaveforms detsim::DumpRawDigits detsim::SimDriftedElectronClusterAna detsim::SimWireAna detsim::WienerFilterAna dnn::SaveImageH5 DUNE::MuonTrackingEff DUNE::NeutrinoShowerEff DUNE::NeutrinoTrackingEff ems::MultiEMShowers evd::EVD evg::GenieOutput geo::DumpChannelMap geo::DumpGeometry hit::DumpHits hit::GausHitFinderAna hit::HitAnaModule hit::HitFinderAna hit::MagDriftAna hit::MCHitAnaExample lar::ComputePi lar::example::AnalysisExample lar::example::Exploder lar_pandora::ConsolidatedPFParticleAnalysisTemplate lar_pandora::LArPandoraEventDump lar_pandora::PFParticleAnalysis lar_pandora::PFParticleCosmicAna lar_pandora::PFParticleHitDumper lar_pandora::PFParticleMonitoring lar_pandora::PFParticleTrackAna lar_pandora::PFParticleValidation larg4::CheckAuxDetHit larg4::CheckMCParticle larg4::CheckSimEnergyDeposit larg4::ISCalcAna larg4::LArG4Ana larg::LArSimChannelAna lcvn::ICVNZlibMaker MCBTDemo microboone::CosmicRemovalAna nnet::EvaluateROIEff nnet::NoiseWaveformDump nnet::PointIdEffTest nnet::PointIdTrainingData nnet::RawWaveformClnSigDump nnet::RawWaveformDump nnet::WaveformDenoiseTest NuGraphAnalyzer NuShowerEff opdet::FIFOHistogramAna opdet::FlashHypothesisAna opdet::LEDCalibrationAna opdet::OpDigiAna opdet::OpFlashAna opdet::OpFlashMCTruthAna opdet::OpFlashSimpleAna opdet::OpHitAna opdet::PhotonInf opdet::SimPhotonCounter ophit::DumpOpFlashes ophit::DumpOpHits opreco::OpticalRecoAna pdsp::CheckCNNScore pfpf::PFPAna phot::CreateHybridLibrary phot::PhotonLibraryAnalyzer pid::DumpParticleIDs pid::PIDAAnalyzer pmtana::PMTAna quad::EvalVtx reco3d::PlotSpacePoints recob::DumpChargedSpacePoints recob::DumpClusters recob::DumpPCAxes recob::DumpPFParticles recob::DumpSeeds recob::DumpSpacePoints recob::DumpTracks recob::DumpVertices RecoProxyUsageExample rwgt::ReweightAna shower::TCShowerAnalysis shower::TCShowerElectronLikelihood shower::TCShowerTemplateMaker ShowerQuality sim::DumpGTruth sim::DumpMCParticles sim::DumpMCShowers sim::DumpMCTracks sim::DumpMCTruth sim::DumpOpDetBacktrackerRecords sim::DumpSimChannels sim::DumpSimEnergyDeposits sim::DumpSimPhotons sim::DumpSimPhotonsLite sim::POTaccumulator trk::TrackContainmentAnalyzer trkf::SeedAna trkf::SpacePointAna trkf::TrackAna vertex::AggregateVertexAna vertex::FeatureVertexFinderAna wc::CellTree

Public Types

using ModuleType = EDAnalyzer
 

Public Member Functions

void doBeginJob (SharedResources const &resources)
 
void doEndJob ()
 
void doRespondToOpenInputFile (FileBlock const &fb)
 
void doRespondToCloseInputFile (FileBlock const &fb)
 
void doRespondToOpenOutputFiles (FileBlock const &fb)
 
void doRespondToCloseOutputFiles (FileBlock const &fb)
 
bool doBeginRun (RunPrincipal &rp, ModuleContext const &mc)
 
bool doEndRun (RunPrincipal &rp, ModuleContext const &mc)
 
bool doBeginSubRun (SubRunPrincipal &srp, ModuleContext const &mc)
 
bool doEndSubRun (SubRunPrincipal &srp, ModuleContext const &mc)
 
bool doEvent (EventPrincipal &ep, ModuleContext const &mc, std::atomic< std::size_t > &counts_run, std::atomic< std::size_t > &counts_passed, std::atomic< std::size_t > &counts_failed)
 
ModuleDescription const & moduleDescription () const
 
void setModuleDescription (ModuleDescription const &)
 
std::array< std::vector< ProductInfo >, NumBranchTypes > const & getConsumables () const
 
void sortConsumables (std::string const &current_process_name)
 
std::unique_ptr< WorkermakeWorker (WorkerParams const &wp)
 
template<typename T , BranchType BT>
ViewToken< T > consumesView (InputTag const &tag)
 
template<typename T , BranchType BT>
ViewToken< T > mayConsumeView (InputTag const &tag)
 

Protected Member Functions

 EDAnalyzer (fhicl::ParameterSet const &pset)
 
template<typename Config >
 EDAnalyzer (Table< Config > const &config)
 
std::string const & processName () const
 
bool wantAllEvents () const noexcept
 
bool wantEvent (ScheduleID id, Event const &e) const
 
Handle< TriggerResultsgetTriggerResults (Event const &e) const
 
ConsumesCollectorconsumesCollector ()
 
template<typename T , BranchType = InEvent>
ProductToken< T > consumes (InputTag const &)
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > consumesView (InputTag const &)
 
template<typename T , BranchType = InEvent>
void consumesMany ()
 
template<typename T , BranchType = InEvent>
ProductToken< T > mayConsume (InputTag const &)
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > mayConsumeView (InputTag const &)
 
template<typename T , BranchType = InEvent>
void mayConsumeMany ()
 

Private Types

using base_engine_t = EngineCreator::base_engine_t
 
using seed_t = EngineCreator::seed_t
 
using label_t = EngineCreator::label_t
 

Private Member Functions

std::unique_ptr< WorkerdoMakeWorker (WorkerParams const &wp) final
 
void setupQueues (detail::SharedResources const &) final
 
void beginJobWithFrame (ProcessingFrame const &) final
 
void endJobWithFrame (ProcessingFrame const &) final
 
void respondToOpenInputFileWithFrame (FileBlock const &, ProcessingFrame const &) final
 
void respondToCloseInputFileWithFrame (FileBlock const &, ProcessingFrame const &) final
 
void respondToOpenOutputFilesWithFrame (FileBlock const &, ProcessingFrame const &) final
 
void respondToCloseOutputFilesWithFrame (FileBlock const &, ProcessingFrame const &) final
 
void beginRunWithFrame (Run const &, ProcessingFrame const &) final
 
void endRunWithFrame (Run const &, ProcessingFrame const &) final
 
void beginSubRunWithFrame (SubRun const &, ProcessingFrame const &) final
 
void endSubRunWithFrame (SubRun const &, ProcessingFrame const &) final
 
void analyzeWithFrame (Event const &, ProcessingFrame const &) final
 
virtual void beginJob ()
 
virtual void endJob ()
 
virtual void respondToOpenInputFile (FileBlock const &)
 
virtual void respondToCloseInputFile (FileBlock const &)
 
virtual void respondToOpenOutputFiles (FileBlock const &)
 
virtual void respondToCloseOutputFiles (FileBlock const &)
 
virtual void beginRun (Run const &)
 
virtual void endRun (Run const &)
 
virtual void beginSubRun (SubRun const &)
 
virtual void endSubRun (SubRun const &)
 
virtual void analyze (Event const &)=0
 
ScheduleID scheduleID () const noexcept
 
hep::concurrency::SerialTaskQueueChain * serialTaskQueueChain () const
 
std::set< std::string > const & sharedResources () const
 
void createQueues (SharedResources const &resources)
 
template<BranchType BT = InEvent, typename... T>
void serialize (T const &...)
 
template<BranchType , typename... T>
void serialize (T const &...resources)
 
template<BranchType BT = InEvent, typename... T>
void serializeExternal (T const &...)
 
template<BranchType , typename... T>
void serializeExternal (T const &...resources)
 
template<BranchType BT = InEvent>
void async ()
 

Detailed Description

Definition at line 20 of file EDAnalyzer.h.

Member Typedef Documentation

Definition at line 21 of file LegacyModule.h.

Definition at line 22 of file EDAnalyzer.h.

Definition at line 20 of file LegacyModule.h.

Constructor & Destructor Documentation

art::EDAnalyzer::EDAnalyzer ( fhicl::ParameterSet const &  pset)
explicitprotected

Definition at line 6 of file EDAnalyzer.cc.

Referenced by opdet::SimPhotonCounter::isVisible().

7  : Analyzer{pset}, LegacyModule{pset.get<std::string>("module_label")}
8  {}
LegacyModule(std::string const &module_label)
Definition: LegacyModule.cc:5
Analyzer(fhicl::ParameterSet const &pset)
Definition: Analyzer.cc:22

Member Function Documentation

void art::EDAnalyzer::analyzeWithFrame ( Event const &  e,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 87 of file EDAnalyzer.cc.

References analyze(), and art::ProcessingFrame::scheduleID().

Referenced by EDAnalyzer().

88  {
89  ScheduleIDSentry sentry{*this, frame.scheduleID()};
90  analyze(e);
91  }
virtual void analyze(Event const &)=0
Float_t e
Definition: plot.C:35
template<BranchType BT = InEvent>
void art::detail::SharedModule::async ( )
inlineprotectedinherited

Definition at line 38 of file SharedModule.h.

References art::detail::SharedModule::asyncDeclared_, art::detail::SharedModule::implicit_serialize(), art::InEvent, and art::detail::SharedModule::serialize_for().

39  {
40  static_assert(
41  BT == InEvent,
42  "async is currently supported only for the 'InEvent' level.");
43  asyncDeclared_ = true;
44  }
void art::EDAnalyzer::beginJob ( )
privatevirtual

Reimplemented in ClusteringValidation::ClusteringValidation, lar::example::AnalysisExample, ems::MultiEMShowers, nnet::PointIdTrainingData, nnet::RawWaveformClnSigDump, nnet::RawWaveformDump, detsim::DumpRawDigits, nnet::PointIdEffTest, opdet::SimPhotonCounter, geo::DumpGeometry, NuShowerEff, nnet::EvaluateROIEff, nnet::NoiseWaveformDump, nnet::WaveformDenoiseTest, lcvn::LArNuCVNZlibMaker, lcvn::ICVNZlibMaker, rwgt::ReweightAna, DUNE::MuonTrackingEff, DUNE::NeutrinoTrackingEff, hit::HitFinderAna, cluster::DBclusterAna, hit::HitAnaModule, hit::GausHitFinderAna, pdsp::CheckCNNScore, opdet::FlashHypothesisAna, caldata::CalWireAna, cluster::ClusterAna, cluster::ClusterPCA, ShowerQuality, pfpf::PFPAna, opreco::OpticalRecoAna, opdet::PhotonInf, artg4tk::CheckDRCalorimeterHits, artg4tk::CheckProtonProduction, artg4tk::CheckTrackerHits, microboone::CosmicRemovalAna, cluster::HoughLineFinderAna, vertex::FeatureVertexFinderAna, artg4tk::CheckInteractions, larg4::ISCalcAna, artg4tk::CheckGenParticle, artg4tk::CheckHits, artg4tk::CheckPhotonHits, detsim::WienerFilterAna, larg4::LArG4Ana, evd::EVD, DUNE::NeutrinoShowerEff, detsim::SimWireAna, pid::PIDAAnalyzer, shower::TCShowerElectronLikelihood, shower::TCShowerTemplateMaker, vertex::AggregateVertexAna, detsim::SimDriftedElectronClusterAna, opdet::OpFlashSimpleAna, artg4tk::CheckCalorimeterHits, larg4::CheckMCParticle, lar_pandora::PFParticleHitDumper, dnn::SaveImageH5, lar_pandora::PFParticleAnalysis, lar_pandora::PFParticleMonitoring, shower::TCShowerAnalysis, lar_pandora::PFParticleCosmicAna, lar_pandora::PFParticleValidation, phot::PhotonLibraryAnalyzer, lar_pandora::PFParticleTrackAna, larg4::CheckAuxDetHit, and larg4::CheckSimEnergyDeposit.

Definition at line 95 of file EDAnalyzer.cc.

Referenced by beginJobWithFrame(), and EDAnalyzer().

96  {}
void art::EDAnalyzer::beginJobWithFrame ( ProcessingFrame const &  )
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 51 of file EDAnalyzer.cc.

References beginJob().

Referenced by EDAnalyzer().

52  {
53  beginJob();
54  }
virtual void beginJob()
Definition: EDAnalyzer.cc:95
void art::EDAnalyzer::beginRun ( Run const &  )
privatevirtual

Reimplemented in geo::DumpChannelMap, geo::DumpGeometry, NuShowerEff, and cheat::RecoCheckAna.

Definition at line 119 of file EDAnalyzer.cc.

Referenced by beginRunWithFrame(), and EDAnalyzer().

120  {}
void art::EDAnalyzer::beginRunWithFrame ( Run const &  r,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 63 of file EDAnalyzer.cc.

References beginRun().

Referenced by EDAnalyzer().

64  {
65  beginRun(r);
66  }
TRandom r
Definition: spectrum.C:23
virtual void beginRun(Run const &)
Definition: EDAnalyzer.cc:119
void art::EDAnalyzer::beginSubRun ( SubRun const &  )
privatevirtual

Reimplemented in rwgt::ReweightAna.

Definition at line 127 of file EDAnalyzer.cc.

Referenced by beginSubRunWithFrame(), and EDAnalyzer().

128  {}
void art::EDAnalyzer::beginSubRunWithFrame ( SubRun const &  sr,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 75 of file EDAnalyzer.cc.

References beginSubRun().

Referenced by EDAnalyzer().

76  {
77  beginSubRun(sr);
78  }
virtual void beginSubRun(SubRun const &)
Definition: EDAnalyzer.cc:127
template<typename T , BranchType BT>
ProductToken< T > art::ModuleBase::consumes ( InputTag const &  tag)
protectedinherited

Definition at line 61 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumes().

62  {
63  return collector_.consumes<T, BT>(tag);
64  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ProductToken< T > consumes(InputTag const &)
ConsumesCollector & art::ModuleBase::consumesCollector ( )
protectedinherited

Definition at line 57 of file ModuleBase.cc.

References art::ModuleBase::collector_.

58  {
59  return collector_;
60  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename T , BranchType BT>
void art::ModuleBase::consumesMany ( )
protectedinherited

Definition at line 75 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumesMany().

76  {
77  collector_.consumesMany<T, BT>();
78  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::ModuleBase::consumesView ( InputTag const &  )
protectedinherited
template<typename T , BranchType BT>
ViewToken<T> art::ModuleBase::consumesView ( InputTag const &  tag)
inherited

Definition at line 68 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumesView().

69  {
70  return collector_.consumesView<T, BT>(tag);
71  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ViewToken< Element > consumesView(InputTag const &)
void art::detail::SharedModule::createQueues ( SharedResources const &  resources)
inherited

Definition at line 34 of file SharedModule.cc.

References art::detail::SharedModule::asyncDeclared_, util::cbegin(), util::cend(), art::detail::SharedModule::chain_, art::detail::SharedResources::createQueues(), e, util::empty(), art::errors::LogicError, and art::detail::SharedModule::resourceNames_.

Referenced by art::OutputModule::doBeginJob(), art::SharedFilter::setupQueues(), art::SharedProducer::setupQueues(), art::EDFilter::setupQueues(), art::SharedAnalyzer::setupQueues(), art::EDProducer::setupQueues(), and setupQueues().

35  {
37  "An error occurred while processing scheduling options for a "
38  "module.\n"};
39  if (asyncDeclared_) {
40  if (empty(resourceNames_)) {
41  return;
42  }
43  throw e
44  << "async<art::InEvent>() cannot be called in combination with any "
45  "serialize<art::InEvent>(...) calls.\n";
46  }
47 
48  if (empty(resourceNames_)) {
49  throw e << "Either 'async<art::InEvent>()' or "
50  "'serialize<art::InEvent>(...)'\n"
51  "must be called in a shared module's constructor.\n";
52  }
53  std::vector<std::string> const names(cbegin(resourceNames_),
55  auto queues = resources.createQueues(names);
56  chain_ = std::make_unique<SerialTaskQueueChain>(queues);
57  }
decltype(auto) constexpr cend(T &&obj)
ADL-aware version of std::cend.
Definition: StdUtils.h:93
std::set< std::string > resourceNames_
Definition: SharedModule.h:76
std::unique_ptr< hep::concurrency::SerialTaskQueueChain > chain_
Definition: SharedModule.h:78
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
decltype(auto) constexpr cbegin(T &&obj)
ADL-aware version of std::cbegin.
Definition: StdUtils.h:85
Float_t e
Definition: plot.C:35
decltype(auto) constexpr empty(T &&obj)
ADL-aware version of std::empty.
Definition: StdUtils.h:109
void art::detail::Analyzer::doBeginJob ( SharedResources const &  resources)
inherited

Definition at line 25 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

26  {
27  setupQueues(resources);
28  ProcessingFrame const frame{ScheduleID{}};
29  beginJobWithFrame(frame);
30  }
virtual void beginJobWithFrame(ProcessingFrame const &)=0
virtual void setupQueues(SharedResources const &)=0
bool art::detail::Analyzer::doBeginRun ( RunPrincipal rp,
ModuleContext const &  mc 
)
inherited

Definition at line 68 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

69  {
70  ProcessingFrame const frame{mc.scheduleID()};
71  beginRunWithFrame(std::as_const(rp).makeRun(mc), frame);
72  return true;
73  }
virtual void beginRunWithFrame(Run const &, ProcessingFrame const &)=0
bool art::detail::Analyzer::doBeginSubRun ( SubRunPrincipal srp,
ModuleContext const &  mc 
)
inherited

Definition at line 84 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

85  {
86  ProcessingFrame const frame{mc.scheduleID()};
87  beginSubRunWithFrame(std::as_const(srp).makeSubRun(mc), frame);
88  return true;
89  }
virtual void beginSubRunWithFrame(SubRun const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doEndJob ( )
inherited

Definition at line 33 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

34  {
35  ProcessingFrame const frame{ScheduleID{}};
36  endJobWithFrame(frame);
37  }
virtual void endJobWithFrame(ProcessingFrame const &)=0
bool art::detail::Analyzer::doEndRun ( RunPrincipal rp,
ModuleContext const &  mc 
)
inherited

Definition at line 76 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

77  {
78  ProcessingFrame const frame{mc.scheduleID()};
79  endRunWithFrame(std::as_const(rp).makeRun(mc), frame);
80  return true;
81  }
virtual void endRunWithFrame(Run const &, ProcessingFrame const &)=0
bool art::detail::Analyzer::doEndSubRun ( SubRunPrincipal srp,
ModuleContext const &  mc 
)
inherited

Definition at line 92 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

93  {
94  ProcessingFrame const frame{mc.scheduleID()};
95  endSubRunWithFrame(std::as_const(srp).makeSubRun(mc), frame);
96  return true;
97  }
virtual void endSubRunWithFrame(SubRun const &, ProcessingFrame const &)=0
bool art::detail::Analyzer::doEvent ( EventPrincipal ep,
ModuleContext const &  mc,
std::atomic< std::size_t > &  counts_run,
std::atomic< std::size_t > &  counts_passed,
std::atomic< std::size_t > &  counts_failed 
)
inherited

Definition at line 100 of file Analyzer.cc.

References e, and art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

105  {
106  auto const e = std::as_const(ep).makeEvent(mc);
107  if (wantEvent(mc.scheduleID(), e)) {
108  ++counts_run;
109  ProcessingFrame const frame{mc.scheduleID()};
110  analyzeWithFrame(e, frame);
111  ++counts_passed;
112  }
113  return true;
114  }
bool wantEvent(ScheduleID id, Event const &e) const
Definition: Observer.cc:63
Float_t e
Definition: plot.C:35
virtual void analyzeWithFrame(Event const &, ProcessingFrame const &)=0
std::unique_ptr< Worker > art::EDAnalyzer::doMakeWorker ( WorkerParams const &  wp)
finalprivatevirtual

Implements art::ModuleBase.

Definition at line 11 of file EDAnalyzer.cc.

Referenced by EDAnalyzer().

12  {
13  return std::make_unique<WorkerT<EDAnalyzer>>(this, wp);
14  }
void art::detail::Analyzer::doRespondToCloseInputFile ( FileBlock const &  fb)
inherited

Definition at line 47 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

48  {
49  ProcessingFrame const frame{ScheduleID{}};
51  }
TFile fb("Li6.root")
virtual void respondToCloseInputFileWithFrame(FileBlock const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doRespondToCloseOutputFiles ( FileBlock const &  fb)
inherited

Definition at line 61 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

62  {
63  ProcessingFrame const frame{ScheduleID{}};
65  }
virtual void respondToCloseOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::detail::Analyzer::doRespondToOpenInputFile ( FileBlock const &  fb)
inherited

Definition at line 40 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

41  {
42  ProcessingFrame const frame{ScheduleID{}};
44  }
TFile fb("Li6.root")
virtual void respondToOpenInputFileWithFrame(FileBlock const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doRespondToOpenOutputFiles ( FileBlock const &  fb)
inherited

Definition at line 54 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

55  {
56  ProcessingFrame const frame{ScheduleID{}};
58  }
virtual void respondToOpenOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::EDAnalyzer::endJobWithFrame ( ProcessingFrame const &  )
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 57 of file EDAnalyzer.cc.

References endJob().

Referenced by EDAnalyzer().

58  {
59  endJob();
60  }
virtual void endJob()
Definition: EDAnalyzer.cc:99
void art::EDAnalyzer::endRun ( Run const &  )
privatevirtual

Definition at line 123 of file EDAnalyzer.cc.

Referenced by EDAnalyzer(), and endRunWithFrame().

124  {}
void art::EDAnalyzer::endRunWithFrame ( Run const &  r,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 69 of file EDAnalyzer.cc.

References endRun().

Referenced by EDAnalyzer().

70  {
71  endRun(r);
72  }
TRandom r
Definition: spectrum.C:23
virtual void endRun(Run const &)
Definition: EDAnalyzer.cc:123
void art::EDAnalyzer::endSubRun ( SubRun const &  )
privatevirtual

Reimplemented in sim::POTaccumulator, lcvn::LArNuCVNZlibMaker, and rwgt::ReweightAna.

Definition at line 131 of file EDAnalyzer.cc.

Referenced by EDAnalyzer(), and endSubRunWithFrame().

132  {}
void art::EDAnalyzer::endSubRunWithFrame ( SubRun const &  sr,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 81 of file EDAnalyzer.cc.

References endSubRun().

Referenced by EDAnalyzer().

82  {
83  endSubRun(sr);
84  }
virtual void endSubRun(SubRun const &)
Definition: EDAnalyzer.cc:131
std::array< std::vector< ProductInfo >, NumBranchTypes > const & art::ModuleBase::getConsumables ( ) const
inherited

Definition at line 43 of file ModuleBase.cc.

References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().

44  {
45  return collector_.getConsumables();
46  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
std::array< std::vector< ProductInfo >, NumBranchTypes > const & getConsumables() const
Handle< TriggerResults > art::Observer::getTriggerResults ( Event const &  e) const
protectedinherited

Definition at line 75 of file Observer.cc.

References art::ProductRetriever::get(), and art::Observer::selectors_.

Referenced by art::OutputModule::doWriteEvent(), and art::Observer::wantAllEvents().

76  {
77  if (selectors_) {
78  return selectors_->getOneTriggerResults(e);
79  }
80 
81  // The following applies for cases where no SelectEvents entries
82  // exist.
83  Handle<TriggerResults> h;
84  if (e.get(empty_process_name, h)) {
85  return h;
86  }
87  return Handle<TriggerResults>{};
88  }
Float_t e
Definition: plot.C:35
std::optional< detail::ProcessAndEventSelectors > selectors_
Definition: Observer.h:79
std::unique_ptr< Worker > art::ModuleBase::makeWorker ( WorkerParams const &  wp)
inherited

Definition at line 37 of file ModuleBase.cc.

References art::ModuleBase::doMakeWorker(), and art::NumBranchTypes.

38  {
39  return doMakeWorker(wp);
40  }
virtual std::unique_ptr< Worker > doMakeWorker(WorkerParams const &wp)=0
template<typename T , BranchType BT>
ProductToken< T > art::ModuleBase::mayConsume ( InputTag const &  tag)
protectedinherited

Definition at line 82 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsume().

83  {
84  return collector_.mayConsume<T, BT>(tag);
85  }
ProductToken< T > mayConsume(InputTag const &)
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename T , BranchType BT>
void art::ModuleBase::mayConsumeMany ( )
protectedinherited

Definition at line 96 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeMany().

97  {
98  collector_.mayConsumeMany<T, BT>();
99  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::ModuleBase::mayConsumeView ( InputTag const &  )
protectedinherited
template<typename T , BranchType BT>
ViewToken<T> art::ModuleBase::mayConsumeView ( InputTag const &  tag)
inherited

Definition at line 89 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeView().

90  {
91  return collector_.mayConsumeView<T, BT>(tag);
92  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ViewToken< Element > mayConsumeView(InputTag const &)
ModuleDescription const & art::ModuleBase::moduleDescription ( ) const
inherited

Definition at line 13 of file ModuleBase.cc.

References art::errors::LogicError.

Referenced by art::OutputModule::doRespondToOpenInputFile(), art::OutputModule::doWriteEvent(), art::Modifier::fillProductDescriptions(), art::OutputModule::makePlugins_(), art::OutputWorker::OutputWorker(), reco::shower::LArPandoraModularShowerCreation::produce(), art::Modifier::registerProducts(), and art::OutputModule::registerProducts().

14  {
15  if (md_.has_value()) {
16  return *md_;
17  }
18 
20  "There was an error while calling moduleDescription().\n"}
21  << "The moduleDescription() base-class member function cannot be called\n"
22  "during module construction. To determine which module is "
23  "responsible\n"
24  "for calling it, find the '<module type>:<module "
25  "label>@Construction'\n"
26  "tag in the message prefix above. Please contact artists@fnal.gov\n"
27  "for guidance.\n";
28  }
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
std::optional< ModuleDescription > md_
Definition: ModuleBase.h:55
string const & art::Observer::processName ( ) const
protectedinherited

Definition at line 57 of file Observer.cc.

References art::Observer::process_name_.

Referenced by art::FileDumperOutput::printPrincipal().

58  {
59  return process_name_;
60  }
std::string process_name_
Definition: Observer.h:76
void art::EDAnalyzer::respondToCloseInputFile ( FileBlock const &  )
privatevirtual

Definition at line 107 of file EDAnalyzer.cc.

Referenced by EDAnalyzer(), and respondToCloseInputFileWithFrame().

108  {}
void art::EDAnalyzer::respondToCloseInputFileWithFrame ( FileBlock const &  fb,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 30 of file EDAnalyzer.cc.

References respondToCloseInputFile().

Referenced by EDAnalyzer().

32  {
34  }
virtual void respondToCloseInputFile(FileBlock const &)
Definition: EDAnalyzer.cc:107
TFile fb("Li6.root")
void art::EDAnalyzer::respondToCloseOutputFiles ( FileBlock const &  )
privatevirtual

Definition at line 115 of file EDAnalyzer.cc.

Referenced by EDAnalyzer(), and respondToCloseOutputFilesWithFrame().

116  {}
void art::EDAnalyzer::respondToCloseOutputFilesWithFrame ( FileBlock const &  fb,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 44 of file EDAnalyzer.cc.

References respondToCloseOutputFiles().

Referenced by EDAnalyzer().

46  {
48  }
virtual void respondToCloseOutputFiles(FileBlock const &)
Definition: EDAnalyzer.cc:115
TFile fb("Li6.root")
void art::EDAnalyzer::respondToOpenInputFile ( FileBlock const &  )
privatevirtual

Definition at line 103 of file EDAnalyzer.cc.

Referenced by EDAnalyzer(), and respondToOpenInputFileWithFrame().

104  {}
void art::EDAnalyzer::respondToOpenInputFileWithFrame ( FileBlock const &  fb,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 23 of file EDAnalyzer.cc.

References respondToOpenInputFile().

Referenced by EDAnalyzer().

25  {
27  }
TFile fb("Li6.root")
virtual void respondToOpenInputFile(FileBlock const &)
Definition: EDAnalyzer.cc:103
void art::EDAnalyzer::respondToOpenOutputFiles ( FileBlock const &  )
privatevirtual

Definition at line 111 of file EDAnalyzer.cc.

Referenced by EDAnalyzer(), and respondToOpenOutputFilesWithFrame().

112  {}
void art::EDAnalyzer::respondToOpenOutputFilesWithFrame ( FileBlock const &  fb,
ProcessingFrame const &   
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 37 of file EDAnalyzer.cc.

References respondToOpenOutputFiles().

Referenced by EDAnalyzer().

39  {
41  }
TFile fb("Li6.root")
virtual void respondToOpenOutputFiles(FileBlock const &)
Definition: EDAnalyzer.cc:111
ScheduleID art::detail::LegacyModule::scheduleID ( ) const
noexceptinherited

Definition at line 12 of file LegacyModule.cc.

References art::detail::LegacyModule::scheduleID_.

Referenced by EDAnalyzer(), art::EDFilter::EDFilter(), and art::EDProducer::EDProducer().

13  {
14  return scheduleID_.load();
15  }
std::atomic< ScheduleID > scheduleID_
Definition: LegacyModule.h:32
template<BranchType BT = InEvent, typename... T>
void art::detail::SharedModule::serialize ( T const &  ...)
protectedinherited
template<BranchType , typename... T>
void art::detail::SharedModule::serialize ( T const &...  resources)
inherited

Definition at line 83 of file SharedModule.h.

References art::detail::SharedModule::serialize_for_resource().

84  {
85  serialize_for_resource(resources...);
86  }
void serialize_for_resource(T const &...t)
Definition: SharedModule.h:52
template<BranchType BT = InEvent, typename... T>
void art::detail::SharedModule::serializeExternal ( T const &  ...)
protectedinherited
template<BranchType , typename... T>
void art::detail::SharedModule::serializeExternal ( T const &...  resources)
inherited

Definition at line 90 of file SharedModule.h.

References art::detail::SharedModule::serialize_for_external_resource().

91  {
92  serialize_for_external_resource(resources...);
93  }
void serialize_for_external_resource(T const &...t)
Definition: SharedModule.h:65
SerialTaskQueueChain * art::detail::SharedModule::serialTaskQueueChain ( ) const
inherited

Definition at line 22 of file SharedModule.cc.

References art::detail::SharedModule::chain_.

23  {
24  return chain_.get();
25  }
std::unique_ptr< hep::concurrency::SerialTaskQueueChain > chain_
Definition: SharedModule.h:78
void art::ModuleBase::setModuleDescription ( ModuleDescription const &  md)
inherited

Definition at line 31 of file ModuleBase.cc.

References art::ModuleBase::md_.

32  {
33  md_ = md;
34  }
std::optional< ModuleDescription > md_
Definition: ModuleBase.h:55
void art::EDAnalyzer::setupQueues ( detail::SharedResources const &  resources)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 17 of file EDAnalyzer.cc.

References art::detail::SharedModule::createQueues().

Referenced by EDAnalyzer().

18  {
19  createQueues(resources);
20  }
void createQueues(SharedResources const &resources)
Definition: SharedModule.cc:34
std::set< std::string > const & art::detail::SharedModule::sharedResources ( ) const
inherited

Definition at line 28 of file SharedModule.cc.

References art::detail::SharedModule::resourceNames_.

29  {
30  return resourceNames_;
31  }
std::set< std::string > resourceNames_
Definition: SharedModule.h:76
void art::ModuleBase::sortConsumables ( std::string const &  current_process_name)
inherited

Definition at line 49 of file ModuleBase.cc.

References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().

50  {
51  // Now that we know we have seen all the consumes declarations,
52  // sort the results for fast lookup later.
53  collector_.sortConsumables(current_process_name);
54  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
void sortConsumables(std::string const &current_process_name)
bool art::Observer::wantAllEvents ( ) const
inlineprotectednoexceptinherited

Definition at line 31 of file Observer.h.

References e, art::Observer::getTriggerResults(), art::Observer::wantAllEvents_, and art::Observer::wantEvent().

32  {
33  return wantAllEvents_;
34  }
bool wantAllEvents_
Definition: Observer.h:75
bool art::Observer::wantEvent ( ScheduleID  id,
Event const &  e 
) const
protectedinherited

Definition at line 63 of file Observer.cc.

References art::Observer::rejectors_, art::Observer::selectors_, and art::Observer::wantAllEvents_.

Referenced by art::OutputModule::doEvent(), art::OutputModule::doWriteEvent(), and art::Observer::wantAllEvents().

64  {
65  if (wantAllEvents_) {
66  return true;
67  }
68  bool const select_event = selectors_ ? selectors_->matchEvent(id, e) : true;
69  bool const reject_event =
70  rejectors_ ? rejectors_->matchEvent(id, e) : false;
71  return select_event and not reject_event;
72  }
bool wantAllEvents_
Definition: Observer.h:75
std::optional< detail::ProcessAndEventSelectors > rejectors_
Definition: Observer.h:80
Float_t e
Definition: plot.C:35
std::optional< detail::ProcessAndEventSelectors > selectors_
Definition: Observer.h:79

The documentation for this class was generated from the following files: