LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
opdet::OpFlashMCTruthAna Class Reference
Inheritance diagram for opdet::OpFlashMCTruthAna:
art::EDAnalyzer art::detail::Analyzer art::detail::LegacyModule art::Observer art::ModuleBase

Public Types

using ModuleType = EDAnalyzer
 

Public Member Functions

 OpFlashMCTruthAna (const fhicl::ParameterSet &)
 
void analyze (const art::Event &)
 
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< Worker > makeWorker (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

std::string const & processName () const
 
bool wantAllEvents () const noexcept
 
bool wantEvent (ScheduleID id, Event const &e) const
 
Handle< TriggerResults > getTriggerResults (Event const &e) const
 
ConsumesCollector & consumesCollector ()
 
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 Attributes

std::string fFlashInputModule
 
std::string fTruthInputModule
 
TTree * fAnalysisTree
 
TTree * fPerEventTree
 
Int_t fEventID
 
Int_t fNFlashes
 
Int_t fNTruths
 
Float_t fFlashY
 
Float_t fFlashZ
 
Float_t fFlashU
 
Float_t fFlashV
 
Float_t fFlashT
 
Float_t fFlashPE
 
Float_t fFlashFastToTotal
 
Float_t fFlashWidthY
 
Float_t fFlashWidthZ
 
Float_t fFlashWidthU
 
Float_t fFlashWidthV
 
Float_t fVertexX
 
Float_t fVertexY
 
Float_t fVertexZ
 
Float_t fVertexT
 
Float_t fTrueE
 
Int_t fTruePDG
 
Float_t fCenterX
 
Float_t fCenterY
 
Float_t fCenterZ
 
Float_t fDistFlashCenter
 
Float_t fDistFlashVertex
 
Float_t fDistFlashCenterNorm
 
Float_t fDistFlashVertexNorm
 

Detailed Description

Definition at line 31 of file OpFlashMCTruthAna_module.cc.

Member Typedef Documentation

Definition at line 22 of file EDAnalyzer.h.

Constructor & Destructor Documentation

opdet::OpFlashMCTruthAna::OpFlashMCTruthAna ( const fhicl::ParameterSet )

Definition at line 81 of file OpFlashMCTruthAna_module.cc.

References fAnalysisTree, fCenterX, fCenterY, fCenterZ, fDistFlashCenter, fDistFlashVertex, fEventID, fFlashFastToTotal, fFlashInputModule, fFlashPE, fFlashT, fFlashU, fFlashV, fFlashWidthU, fFlashWidthV, fFlashWidthY, fFlashWidthZ, fFlashY, fFlashZ, fNFlashes, fPerEventTree, fTrueE, fTruePDG, fTruthInputModule, fVertexX, fVertexY, fVertexZ, and fhicl::ParameterSet::get().

81  : EDAnalyzer(pset)
82  {
83 
84  // Indicate that the Input Module comes from .fcl
85  fFlashInputModule = pset.get<std::string>("FlashInputModule");
86  fTruthInputModule = pset.get<std::string>("TruthInputModule");
87 
89 
90  fPerEventTree = tfs->make<TTree>("PerEventTree", "PerEventTree");
91 
92  fPerEventTree->Branch("EventID", &fEventID, "EventID/I");
93  fPerEventTree->Branch("NFlashes", &fNFlashes, "NFlashes/I");
94 
95  fPerEventTree->Branch("VertexX", &fVertexX, "VertexX/F");
96  fPerEventTree->Branch("VertexY", &fVertexY, "VertexY/F");
97  fPerEventTree->Branch("VertexZ", &fVertexZ, "VertexZ/F");
98 
99  fPerEventTree->Branch("TrueE", &fTrueE, "TrueE/F");
100  fPerEventTree->Branch("TruePDG", &fTruePDG, "TruePDG/I");
101 
102  fPerEventTree->Branch("CenterX", &fCenterX, "CenterX/F");
103  fPerEventTree->Branch("CenterY", &fCenterY, "CenterY/F");
104  fPerEventTree->Branch("CenterZ", &fCenterZ, "CenterZ/F");
105 
106  fAnalysisTree = tfs->make<TTree>("AnalysisTree", "AnalysisTree");
107 
108  fAnalysisTree->Branch("EventID", &fEventID, "EventID/I");
109  fAnalysisTree->Branch("NFlashes", &fNFlashes, "NFlashes/I");
110 
111  fAnalysisTree->Branch("FlashY", &fFlashY, "FlashY/F");
112  fAnalysisTree->Branch("FlashZ", &fFlashZ, "FlashZ/F");
113  fAnalysisTree->Branch("FlashU", &fFlashU, "FlashU/F");
114  fAnalysisTree->Branch("FlashV", &fFlashV, "FlashV/F");
115 
116  fAnalysisTree->Branch("FlashWidthY", &fFlashWidthY, "FlashWidthY/F");
117  fAnalysisTree->Branch("FlashWidthZ", &fFlashWidthZ, "FlashWidthZ/F");
118  fAnalysisTree->Branch("FlashWidthU", &fFlashWidthU, "FlashWidthU/F");
119  fAnalysisTree->Branch("FlashWidthV", &fFlashWidthV, "FlashWidthV/F");
120 
121  fAnalysisTree->Branch("FlashT", &fFlashT, "FlashT/F");
122  fAnalysisTree->Branch("FlashPE", &fFlashPE, "FlashPE/F");
123  fAnalysisTree->Branch("FlashFastToTotal", &fFlashFastToTotal, "FlashFastToTotal/F");
124 
125  fAnalysisTree->Branch("VertexX", &fVertexX, "VertexX/F");
126  fAnalysisTree->Branch("VertexY", &fVertexY, "VertexY/F");
127  fAnalysisTree->Branch("VertexZ", &fVertexZ, "VertexZ/F");
128 
129  fAnalysisTree->Branch("TrueE", &fTrueE, "TrueE/F");
130  fAnalysisTree->Branch("TruePDG", &fTruePDG, "TruePDG/I");
131 
132  fAnalysisTree->Branch("CenterX", &fCenterX, "CenterX/F");
133  fAnalysisTree->Branch("CenterY", &fCenterY, "CenterY/F");
134  fAnalysisTree->Branch("CenterZ", &fCenterZ, "CenterZ/F");
135 
136  fAnalysisTree->Branch("DistFlashCenter", &fDistFlashCenter, "DistFlashCenter/F");
137  fAnalysisTree->Branch("DistFlashVertex", &fDistFlashVertex, "DistFlashVertex/F");
138  }
EDAnalyzer(fhicl::ParameterSet const &pset)
Definition: EDAnalyzer.cc:6

Member Function Documentation

void opdet::OpFlashMCTruthAna::analyze ( const art::Event evt)

Definition at line 141 of file OpFlashMCTruthAna_module.cc.

References simb::MCParticle::E(), simb::MCParticle::EndX(), simb::MCParticle::EndY(), simb::MCParticle::EndZ(), art::EventID::event(), fAnalysisTree, recob::OpFlash::FastToTotal(), fCenterX, fCenterY, fCenterZ, fDistFlashCenter, fDistFlashCenterNorm, fDistFlashVertex, fDistFlashVertexNorm, fEventID, fFlashFastToTotal, fFlashInputModule, fFlashPE, fFlashT, fFlashU, fFlashV, fFlashWidthU, fFlashWidthV, fFlashWidthY, fFlashWidthZ, fFlashY, fFlashZ, fNFlashes, fNTruths, fPerEventTree, fTrueE, fTruePDG, fTruthInputModule, fVertexT, fVertexX, fVertexY, fVertexZ, art::ProductRetriever::getByLabel(), art::Event::id(), simb::MCParticle::PdgCode(), simb::MCParticle::T(), recob::OpFlash::Time(), recob::OpFlash::TotalPE(), simb::MCParticle::Vx(), simb::MCParticle::Vy(), simb::MCParticle::Vz(), recob::OpFlash::WireCenters(), recob::OpFlash::WireWidths(), recob::OpFlash::YCenter(), recob::OpFlash::YWidth(), recob::OpFlash::ZCenter(), and recob::OpFlash::ZWidth().

142  {
143 
144  // Create a handles
147 
148  // Read in data
149  evt.getByLabel(fFlashInputModule, FlashHandle);
150  evt.getByLabel(fTruthInputModule, TruthHandle);
151 
152  fEventID = evt.id().event();
153 
154  fNTruths = TruthHandle->at(0).NParticles();
155  fNFlashes = FlashHandle->size();
156 
157  std::cout << "Size of truth collection : " << TruthHandle->size() << std::endl;
158  std::cout << "We found " << fNTruths << " truth particles and " << fNFlashes << " flashes"
159  << std::endl;
160 
161  for (int iPart = 0; iPart != fNTruths; ++iPart) {
162  const simb::MCParticle ThisPart = TruthHandle->at(0).GetParticle(iPart);
163  fTruePDG = ThisPart.PdgCode();
164  fTrueE = ThisPart.E(0);
165 
166  fVertexX = ThisPart.Vx(0);
167  fVertexY = ThisPart.Vy(0);
168  fVertexZ = ThisPart.Vz(0);
169  fVertexT = ThisPart.T(0);
170 
171  fCenterX = (ThisPart.Vx(0) + ThisPart.EndX()) / 2.;
172  fCenterY = (ThisPart.Vy(0) + ThisPart.EndY()) / 2.;
173  fCenterZ = (ThisPart.Vz(0) + ThisPart.EndZ()) / 2.;
174 
175  for (unsigned int i = 0; i < FlashHandle->size(); ++i) {
176 
177  // Get OpFlash
178  art::Ptr<recob::OpFlash> TheFlashPtr(FlashHandle, i);
179 
180  fFlashT = TheFlashPtr->Time();
181  fFlashPE = TheFlashPtr->TotalPE();
182  fFlashFastToTotal = TheFlashPtr->FastToTotal();
183 
184  fFlashY = TheFlashPtr->YCenter();
185  fFlashZ = TheFlashPtr->ZCenter();
186  fFlashU = TheFlashPtr->WireCenters().at(0);
187  fFlashV = TheFlashPtr->WireCenters().at(1);
188 
189  fFlashWidthY = TheFlashPtr->YWidth();
190  fFlashWidthZ = TheFlashPtr->ZWidth();
191  fFlashWidthU = TheFlashPtr->WireWidths().at(0);
192  fFlashWidthV = TheFlashPtr->WireWidths().at(1);
193 
194  fDistFlashCenter = pow(pow(fCenterY - fFlashY, 2) + pow(fCenterZ - fFlashZ, 2), 0.5);
195 
196  fDistFlashVertex = pow(pow(fVertexY - fFlashY, 2) + pow(fVertexZ - fFlashZ, 2), 0.5);
197 
198  fDistFlashCenterNorm = pow(pow((fCenterY - fFlashY) / fFlashWidthY, 2) +
199  pow((fCenterZ - fFlashZ) / fFlashWidthZ, 2),
200  0.5);
201 
202  fDistFlashVertexNorm = pow(pow((fVertexY - fFlashY) / fFlashWidthY, 2) +
203  pow((fVertexZ - fFlashZ) / fFlashWidthZ, 2),
204  0.5);
205 
206  fAnalysisTree->Fill();
207  }
208  }
209 
210  fPerEventTree->Fill();
211  }
double E(const int i=0) const
Definition: MCParticle.h:234
int PdgCode() const
Definition: MCParticle.h:213
double EndZ() const
Definition: MCParticle.h:229
double EndY() const
Definition: MCParticle.h:228
double T(const int i=0) const
Definition: MCParticle.h:225
double Vx(const int i=0) const
Definition: MCParticle.h:222
bool getByLabel(std::string const &label, std::string const &instance, Handle< PROD > &result) const
double Vz(const int i=0) const
Definition: MCParticle.h:224
EventNumber_t event() const
Definition: EventID.h:116
double EndX() const
Definition: MCParticle.h:227
EventID id() const
Definition: Event.cc:23
double Vy(const int i=0) const
Definition: MCParticle.h:223
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::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
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")
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::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::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

Member Data Documentation

TTree* opdet::OpFlashMCTruthAna::fAnalysisTree
private

Definition at line 47 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fCenterX
private

Definition at line 57 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fCenterY
private

Definition at line 57 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fCenterZ
private

Definition at line 57 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fDistFlashCenter
private

Definition at line 58 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fDistFlashCenterNorm
private

Definition at line 59 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze().

Float_t opdet::OpFlashMCTruthAna::fDistFlashVertex
private

Definition at line 58 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fDistFlashVertexNorm
private

Definition at line 59 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze().

Int_t opdet::OpFlashMCTruthAna::fEventID
private

Definition at line 50 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashFastToTotal
private

Definition at line 52 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

std::string opdet::OpFlashMCTruthAna::fFlashInputModule
private

Definition at line 44 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashPE
private

Definition at line 52 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashT
private

Definition at line 51 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashU
private

Definition at line 51 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashV
private

Definition at line 51 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashWidthU
private

Definition at line 53 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashWidthV
private

Definition at line 53 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashWidthY
private

Definition at line 53 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashWidthZ
private

Definition at line 53 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashY
private

Definition at line 51 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fFlashZ
private

Definition at line 51 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Int_t opdet::OpFlashMCTruthAna::fNFlashes
private

Definition at line 50 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Int_t opdet::OpFlashMCTruthAna::fNTruths
private

Definition at line 50 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze().

TTree* opdet::OpFlashMCTruthAna::fPerEventTree
private

Definition at line 48 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fTrueE
private

Definition at line 55 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Int_t opdet::OpFlashMCTruthAna::fTruePDG
private

Definition at line 56 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

std::string opdet::OpFlashMCTruthAna::fTruthInputModule
private

Definition at line 45 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fVertexT
private

Definition at line 54 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze().

Float_t opdet::OpFlashMCTruthAna::fVertexX
private

Definition at line 54 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fVertexY
private

Definition at line 54 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().

Float_t opdet::OpFlashMCTruthAna::fVertexZ
private

Definition at line 54 of file OpFlashMCTruthAna_module.cc.

Referenced by analyze(), and OpFlashMCTruthAna().


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