LDMX Software
Trigger.cxx
1
2#include "DQM/Trigger.h"
3
5
6namespace dqm {
7
9 trigger_coll_name_ = ps.get<std::string>("trigger_name");
10 trigger_pass_name_ = ps.get<std::string>("trigger_pass");
11
12 return;
13}
14
17 // create trigger variable histograms
18
19 // pass/fail is a boolean, simple binning
20 histograms_.create(trigger_coll_name_ + ".pass", "Pass trigger", 2, 0, 2);
21
22 int max_e = 20000;
23 int min_e = 0;
24 int n_bins_e = (max_e - min_e) / 100;
25 histograms_.create(trigger_coll_name_ + ".EcalEsum", "Ecal energy sum [MeV]",
26 n_bins_e, min_e, max_e);
27 histograms_.create(trigger_coll_name_ + ".EcalEcut", "Ecal e_{max} cut [MeV]",
28 n_bins_e, min_e, max_e);
29
30 int max_layer = 32;
31 int min_layer = 0;
32 int n_bins_layer = (max_layer - min_layer);
33 histograms_.create(trigger_coll_name_ + ".EcalLayercut", "Ecal layer_{max}",
34 n_bins_layer, min_layer, max_layer);
35
36 int max_electrons = 10;
37 int min_electrons = 0;
38 int n_bins_electrons = (max_electrons - min_electrons);
40 "n_{electrons} used for trigger decision",
41 n_bins_electrons, min_electrons, max_electrons);
42}
43
45 auto trig_result{event.getObject<ldmx::TriggerResult>(trigger_coll_name_,
47
48 histograms_.fill(trigger_coll_name_ + ".EcalEsum", trig_result.getAlgoVar(0));
49 histograms_.fill(trigger_coll_name_ + ".EcalEcut", trig_result.getAlgoVar(1));
50 histograms_.fill(trigger_coll_name_ + ".EcalLayercut",
51 trig_result.getAlgoVar(2));
52 histograms_.fill(trigger_coll_name_ + ".nElectrons",
53 trig_result.getAlgoVar(3));
54 histograms_.fill(trigger_coll_name_ + ".pass", trig_result.passed());
55
56 return;
57}
58
59} // namespace dqm
60
#define DECLARE_ANALYZER(CLASS)
Macro which allows the framework to construct an analyzer given its name during configuration.
Class that represents the trigger decision (pass/fail) for reconstruction.
Generate histograms to check digi pipeline performance.
Definition Trigger.h:14
virtual void configure(framework::config::Parameters &ps)
Input python configuration parameters.
Definition Trigger.cxx:8
std::string trigger_pass_name_
Trigger collection pass name.
Definition Trigger.h:44
virtual void onProcessStart()
Method executed before processing of events begins.
Definition Trigger.cxx:15
virtual void analyze(const framework::Event &event)
Fills histograms.
Definition Trigger.cxx:44
std::string trigger_coll_name_
Trigger collection name.
Definition Trigger.h:41
HistogramPool histograms_
helper object for making and filling histograms
TDirectory * getHistoDirectory()
Access/create a directory in the histogram file for this event processor to create histograms and ana...
Implements an event buffer system for storing event data.
Definition Event.h:42
void create(const config::Parameters &p)
Create a histogram from the input configuration parameters.
void fill(const std::string &name, const T &val)
Fill a 1D histogram.
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:29
const T & get(const std::string &name) const
Retrieve the parameter of the given name.
Definition Parameters.h:78
Represents the trigger decision (pass/fail) for reconstruction.