LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Prints on console the total Protons On Target from the input subruns. More...
Classes | |
struct | Config |
Collection of configuration parameters for the module. More... | |
Public Types | |
using | Parameters = art::EDAnalyzer::Table< Config > |
Type to enable module parameters description by art. More... | |
using | ModuleType = EDAnalyzer |
Public Member Functions | |
POTaccumulator (Parameters const &config) | |
Configuration-checking constructor. More... | |
POTaccumulator (POTaccumulator const &)=delete | |
POTaccumulator (POTaccumulator &&)=delete | |
POTaccumulator & | operator= (POTaccumulator const &)=delete |
POTaccumulator & | operator= (POTaccumulator &&)=delete |
virtual void | analyze (art::Event const &event) override |
virtual void | endSubRun (art::SubRun const &subRun) override |
Collects information from each subrun. More... | |
virtual void | endJob () override |
Prints the general summary. More... | |
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 ¤t_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 Member Functions | |
void | printMissingSubrunList () const |
Prints the list of subruns with partial or missing POT information. More... | |
void | printRunSummary () const |
Prints the list of POT per run. More... | |
void | printSummary (sumdata::POTSummary const &totalPOT) const |
Prints the total POT summary totalPOT . More... | |
Static Private Member Functions | |
static std::string | to_string (sumdata::POTSummary const &POT) |
Converts the information from POT in a compact string. More... | |
Private Attributes | |
art::InputTag | fPOTtag |
Name of sumdata::POTSummary data product. More... | |
std::string | fSummaryOutputCategory |
Name of the main stream for output. More... | |
std::string | fRunOutputCategory |
Name of the run stream for output. More... | |
std::map< art::SubRunID, unsigned int > | fPresentSubrunFragments |
Count of subrun fragments with POT information. More... | |
std::map< art::SubRunID, unsigned int > | fMissingSubrunFragments |
Count of subrun fragments without POT information. More... | |
std::map< art::RunID, art::SummedValue< sumdata::POTSummary > > | fRunPOT |
Partial count of POT in the run, per run. More... | |
Prints on console the total Protons On Target from the input subruns.
This module collects information from each of the subrun in the input files and prints the total of the protons on target. It also optionally prints the total for each observed run. If a subrun is met more than once, the information from all subrun fragments are added together (i.e. it is assumed that summary information is complementary rather than duplicate).
The output can be printed to the console or a file via the appropriate message facility configuration.
Two output streams are used: the one for the run summary and the one for the total summary. They may coincide.
The module reads information from objects of type sumdata::POTSummary
stored in each subrun.
The output streams can be managed by configuring message facility to deal with the relevant category names. All messages are sent with the INFO level.
SummaryTag
(input tag; default: generator
): data product (subrun level) with the summary information;SummaryCategory
(string; default: POTaccumulator
): the name of the output category the summary is sent to;RunSummaryCategory
(string; default: disabled): if specified, a summary POT is printed for each run; the summary is sent to the output stream specified by the value of this parameter. Definition at line 71 of file POTaccumulator_module.cc.
|
inherited |
Definition at line 22 of file EDAnalyzer.h.
Type to enable module parameters description by art.
Definition at line 98 of file POTaccumulator_module.cc.
|
explicit |
Configuration-checking constructor.
Definition at line 158 of file POTaccumulator_module.cc.
|
delete |
|
delete |
|
inlineoverridevirtual |
Implements art::EDAnalyzer.
Definition at line 110 of file POTaccumulator_module.cc.
References endJob(), and endSubRun().
|
protectedinherited |
Definition at line 61 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumes().
|
protectedinherited |
|
protectedinherited |
Definition at line 75 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumesMany().
|
protectedinherited |
|
inherited |
Definition at line 68 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumesView().
|
inherited |
Definition at line 25 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 68 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 84 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 33 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 76 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 92 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 100 of file Analyzer.cc.
References e, and art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 47 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 61 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 40 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 54 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
overridevirtual |
Prints the general summary.
Reimplemented from art::EDAnalyzer.
Definition at line 197 of file POTaccumulator_module.cc.
References sumdata::POTSummary::aggregate(), fMissingSubrunFragments, fRunOutputCategory, fRunPOT, printMissingSubrunList(), printRunSummary(), printSummary(), and util::values().
Referenced by analyze().
|
overridevirtual |
Collects information from each subrun.
Reimplemented from art::EDAnalyzer.
Definition at line 166 of file POTaccumulator_module.cc.
References art::InputTag::encode(), fMissingSubrunFragments, fPOTtag, fPresentSubrunFragments, fRunPOT, fSummaryOutputCategory, art::ProductRetriever::getByLabel(), art::SubRun::id(), MF_LOG_TRACE, and to_string().
Referenced by analyze().
|
inherited |
Definition at line 43 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().
|
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().
|
inherited |
Definition at line 37 of file ModuleBase.cc.
References art::ModuleBase::doMakeWorker(), and art::NumBranchTypes.
|
protectedinherited |
Definition at line 82 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsume().
|
protectedinherited |
Definition at line 96 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeMany().
|
protectedinherited |
|
inherited |
Definition at line 89 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeView().
|
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().
|
delete |
|
delete |
|
private |
Prints the list of subruns with partial or missing POT information.
Definition at line 227 of file POTaccumulator_module.cc.
References fMissingSubrunFragments, fPresentSubrunFragments, fRunOutputCategory, and util::size().
Referenced by endJob().
|
private |
Prints the list of POT per run.
Definition at line 252 of file POTaccumulator_module.cc.
References fPresentSubrunFragments, fRunOutputCategory, fRunPOT, util::size(), and to_string().
Referenced by endJob().
|
private |
Prints the total POT summary totalPOT
.
Definition at line 270 of file POTaccumulator_module.cc.
References fPresentSubrunFragments, fRunPOT, fSummaryOutputCategory, and to_string().
Referenced by endJob().
|
protectedinherited |
Definition at line 57 of file Observer.cc.
References art::Observer::process_name_.
Referenced by art::FileDumperOutput::printPrincipal().
|
inherited |
|
inherited |
Definition at line 49 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().
|
staticprivate |
Converts the information from POT
in a compact string.
Definition at line 281 of file POTaccumulator_module.cc.
References DEFINE_ART_MODULE, sumdata::POTSummary::goodspills, util::to_string(), sumdata::POTSummary::totgoodpot, sumdata::POTSummary::totpot, and sumdata::POTSummary::totspills.
Referenced by endSubRun(), printRunSummary(), and printSummary().
|
inlineprotectednoexceptinherited |
Definition at line 31 of file Observer.h.
References e, art::Observer::getTriggerResults(), art::Observer::wantAllEvents_, and art::Observer::wantEvent().
|
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().
|
private |
Count of subrun fragments without POT information.
Definition at line 133 of file POTaccumulator_module.cc.
Referenced by endJob(), endSubRun(), and printMissingSubrunList().
|
private |
Name of sumdata::POTSummary
data product.
Definition at line 121 of file POTaccumulator_module.cc.
Referenced by endSubRun().
|
private |
Count of subrun fragments with POT information.
Definition at line 130 of file POTaccumulator_module.cc.
Referenced by endSubRun(), printMissingSubrunList(), printRunSummary(), and printSummary().
|
private |
Name of the run stream for output.
Definition at line 123 of file POTaccumulator_module.cc.
Referenced by endJob(), printMissingSubrunList(), and printRunSummary().
|
private |
Partial count of POT in the run, per run.
Definition at line 136 of file POTaccumulator_module.cc.
Referenced by endJob(), endSubRun(), printRunSummary(), and printSummary().
|
private |
Name of the main stream for output.
Definition at line 122 of file POTaccumulator_module.cc.
Referenced by endSubRun(), and printSummary().