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

#include "SharedAnalyzer.h"

Inheritance diagram for art::SharedAnalyzer:
art::detail::Analyzer art::detail::SharedModule art::Observer art::ModuleBase

Public Types

using ModuleType = SharedAnalyzer
 

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)
 
hep::concurrency::SerialTaskQueueChain * serialTaskQueueChain () const
 
std::set< std::string > const & sharedResources () const
 
void createQueues (SharedResources const &resources)
 
template<BranchType , typename... T>
void serialize (T const &...resources)
 
template<BranchType , typename... T>
void serializeExternal (T const &...resources)
 

Protected Member Functions

 SharedAnalyzer (fhicl::ParameterSet const &pset)
 
template<typename Config >
 SharedAnalyzer (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 ()
 
template<BranchType BT = InEvent, typename... T>
void serialize (T const &...)
 
template<BranchType BT = InEvent, typename... T>
void serializeExternal (T const &...)
 
template<BranchType BT = InEvent>
void async ()
 

Private Member Functions

std::unique_ptr< WorkerdoMakeWorker (WorkerParams const &wp) final
 
void setupQueues (detail::SharedResources const &resources) 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 (ProcessingFrame const &)
 
virtual void endJob (ProcessingFrame const &)
 
virtual void respondToOpenInputFile (FileBlock const &, ProcessingFrame const &)
 
virtual void respondToCloseInputFile (FileBlock const &, ProcessingFrame const &)
 
virtual void respondToOpenOutputFiles (FileBlock const &, ProcessingFrame const &)
 
virtual void respondToCloseOutputFiles (FileBlock const &, ProcessingFrame const &)
 
virtual void beginRun (Run const &, ProcessingFrame const &)
 
virtual void endRun (Run const &, ProcessingFrame const &)
 
virtual void beginSubRun (SubRun const &, ProcessingFrame const &)
 
virtual void endSubRun (SubRun const &, ProcessingFrame const &)
 
virtual void analyze (Event const &, ProcessingFrame const &)=0
 

Detailed Description

Definition at line 21 of file SharedAnalyzer.h.

Member Typedef Documentation

Constructor & Destructor Documentation

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

Definition at line 6 of file SharedAnalyzer.cc.

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

Member Function Documentation

virtual void art::SharedAnalyzer::analyze ( Event const &  ,
ProcessingFrame const &   
)
privatepure virtual

Referenced by analyzeWithFrame(), and SharedAnalyzer().

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

Implements art::detail::Analyzer.

Definition at line 91 of file SharedAnalyzer.cc.

References analyze().

Referenced by SharedAnalyzer().

92  {
93  analyze(e, frame);
94  }
virtual void analyze(Event const &, ProcessingFrame 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::SharedAnalyzer::beginJob ( ProcessingFrame const &  )
privatevirtual

Definition at line 97 of file SharedAnalyzer.cc.

Referenced by beginJobWithFrame(), and SharedAnalyzer().

98  {}
void art::SharedAnalyzer::beginJobWithFrame ( ProcessingFrame const &  frame)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 53 of file SharedAnalyzer.cc.

References beginJob().

Referenced by SharedAnalyzer().

54  {
55  beginJob(frame);
56  }
virtual void beginJob(ProcessingFrame const &)
void art::SharedAnalyzer::beginRun ( Run const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 125 of file SharedAnalyzer.cc.

Referenced by beginRunWithFrame(), and SharedAnalyzer().

126  {}
void art::SharedAnalyzer::beginRunWithFrame ( Run const &  r,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 65 of file SharedAnalyzer.cc.

References beginRun().

Referenced by SharedAnalyzer().

66  {
67  beginRun(r, frame);
68  }
TRandom r
Definition: spectrum.C:23
virtual void beginRun(Run const &, ProcessingFrame const &)
void art::SharedAnalyzer::beginSubRun ( SubRun const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 133 of file SharedAnalyzer.cc.

Referenced by beginSubRunWithFrame(), and SharedAnalyzer().

134  {}
void art::SharedAnalyzer::beginSubRunWithFrame ( SubRun const &  sr,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 77 of file SharedAnalyzer.cc.

References beginSubRun().

Referenced by SharedAnalyzer().

79  {
80  beginSubRun(sr, frame);
81  }
virtual void beginSubRun(SubRun const &, ProcessingFrame const &)
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(), setupQueues(), art::EDProducer::setupQueues(), and art::EDAnalyzer::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::SharedAnalyzer::doMakeWorker ( WorkerParams const &  wp)
finalprivatevirtual

Implements art::ModuleBase.

Definition at line 11 of file SharedAnalyzer.cc.

Referenced by SharedAnalyzer().

12  {
13  return std::make_unique<WorkerT<SharedAnalyzer>>(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::SharedAnalyzer::endJob ( ProcessingFrame const &  )
privatevirtual

Definition at line 101 of file SharedAnalyzer.cc.

Referenced by endJobWithFrame(), and SharedAnalyzer().

102  {}
void art::SharedAnalyzer::endJobWithFrame ( ProcessingFrame const &  frame)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 59 of file SharedAnalyzer.cc.

References endJob().

Referenced by SharedAnalyzer().

60  {
61  endJob(frame);
62  }
virtual void endJob(ProcessingFrame const &)
void art::SharedAnalyzer::endRun ( Run const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 129 of file SharedAnalyzer.cc.

Referenced by endRunWithFrame(), and SharedAnalyzer().

130  {}
void art::SharedAnalyzer::endRunWithFrame ( Run const &  r,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 71 of file SharedAnalyzer.cc.

References endRun().

Referenced by SharedAnalyzer().

72  {
73  endRun(r, frame);
74  }
TRandom r
Definition: spectrum.C:23
virtual void endRun(Run const &, ProcessingFrame const &)
void art::SharedAnalyzer::endSubRun ( SubRun const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 137 of file SharedAnalyzer.cc.

Referenced by endSubRunWithFrame(), and SharedAnalyzer().

138  {}
void art::SharedAnalyzer::endSubRunWithFrame ( SubRun const &  sr,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 84 of file SharedAnalyzer.cc.

References endSubRun().

Referenced by SharedAnalyzer().

86  {
87  endSubRun(sr, frame);
88  }
virtual void endSubRun(SubRun const &, ProcessingFrame const &)
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::SharedAnalyzer::respondToCloseInputFile ( FileBlock const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 110 of file SharedAnalyzer.cc.

Referenced by respondToCloseInputFileWithFrame(), and SharedAnalyzer().

112  {}
void art::SharedAnalyzer::respondToCloseInputFileWithFrame ( FileBlock const &  fb,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 30 of file SharedAnalyzer.cc.

References respondToCloseInputFile().

Referenced by SharedAnalyzer().

32  {
34  }
TFile fb("Li6.root")
virtual void respondToCloseInputFile(FileBlock const &, ProcessingFrame const &)
void art::SharedAnalyzer::respondToCloseOutputFiles ( FileBlock const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 120 of file SharedAnalyzer.cc.

Referenced by respondToCloseOutputFilesWithFrame(), and SharedAnalyzer().

122  {}
void art::SharedAnalyzer::respondToCloseOutputFilesWithFrame ( FileBlock const &  fb,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 45 of file SharedAnalyzer.cc.

References respondToCloseOutputFiles().

Referenced by SharedAnalyzer().

48  {
50  }
virtual void respondToCloseOutputFiles(FileBlock const &, ProcessingFrame const &)
TFile fb("Li6.root")
void art::SharedAnalyzer::respondToOpenInputFile ( FileBlock const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 105 of file SharedAnalyzer.cc.

Referenced by respondToOpenInputFileWithFrame(), and SharedAnalyzer().

107  {}
void art::SharedAnalyzer::respondToOpenInputFileWithFrame ( FileBlock const &  fb,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 23 of file SharedAnalyzer.cc.

References respondToOpenInputFile().

Referenced by SharedAnalyzer().

25  {
26  respondToOpenInputFile(fb, frame);
27  }
TFile fb("Li6.root")
virtual void respondToOpenInputFile(FileBlock const &, ProcessingFrame const &)
void art::SharedAnalyzer::respondToOpenOutputFiles ( FileBlock const &  ,
ProcessingFrame const &   
)
privatevirtual

Definition at line 115 of file SharedAnalyzer.cc.

Referenced by respondToOpenOutputFilesWithFrame(), and SharedAnalyzer().

117  {}
void art::SharedAnalyzer::respondToOpenOutputFilesWithFrame ( FileBlock const &  fb,
ProcessingFrame const &  frame 
)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 37 of file SharedAnalyzer.cc.

References respondToOpenOutputFiles().

Referenced by SharedAnalyzer().

40  {
42  }
TFile fb("Li6.root")
virtual void respondToOpenOutputFiles(FileBlock const &, ProcessingFrame const &)
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::SharedAnalyzer::setupQueues ( detail::SharedResources const &  resources)
finalprivatevirtual

Implements art::detail::Analyzer.

Definition at line 17 of file SharedAnalyzer.cc.

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

Referenced by SharedAnalyzer().

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: