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... | |
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... | |
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.
using sim::POTaccumulator::Parameters = art::EDAnalyzer::Table<Config> |
Type to enable module parameters description by art.
Definition at line 98 of file POTaccumulator_module.cc.
|
explicit |
Configuration-checking constructor.
Definition at line 160 of file POTaccumulator_module.cc.
|
delete |
|
delete |
|
inlineoverridevirtual |
Definition at line 111 of file POTaccumulator_module.cc.
|
overridevirtual |
Prints the general summary.
Definition at line 201 of file POTaccumulator_module.cc.
|
overridevirtual |
Collects information from each subrun.
Definition at line 169 of file POTaccumulator_module.cc.
|
delete |
|
delete |
|
private |
Prints the list of subruns with partial or missing POT information.
Definition at line 232 of file POTaccumulator_module.cc.
|
private |
Prints the list of POT per run.
Definition at line 258 of file POTaccumulator_module.cc.
|
private |
Prints the total POT summary totalPOT
.
Definition at line 277 of file POTaccumulator_module.cc.
|
staticprivate |
Converts the information from POT
in a compact string.
Definition at line 289 of file POTaccumulator_module.cc.
|
private |
Count of subrun fragments without POT information.
Definition at line 135 of file POTaccumulator_module.cc.
|
private |
Name of sumdata::POTSummary
data product.
Definition at line 123 of file POTaccumulator_module.cc.
|
private |
Count of subrun fragments with POT information.
Definition at line 132 of file POTaccumulator_module.cc.
|
private |
Name of the run stream for output.
Definition at line 125 of file POTaccumulator_module.cc.
|
private |
Partial count of POT in the run, per run.
Definition at line 138 of file POTaccumulator_module.cc.
|
private |
Name of the main stream for output.
Definition at line 124 of file POTaccumulator_module.cc.