CMS 3D CMS Logo

L1TObjectsTiming.h
Go to the documentation of this file.
1 #ifndef DQM_L1TMonitor_L1TObjectsTiming_h
2 #define DQM_L1TMonitor_L1TObjectsTiming_h
3 
4 // System include files
5 #include <memory>
6 #include <vector>
7 #include <array>
8 #include <algorithm>
9 #include <string>
10 
16 
19 
31 
33 public:
35  ~L1TObjectsTiming() override;
36  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
37 
38 protected:
39  void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override;
40  void bookHistograms(DQMStore::IBooker&, const edm::Run&, const edm::EventSetup&) override;
41  void analyze(const edm::Event&, const edm::EventSetup&) override;
42 
43 private:
49 
50  edm::EDGetTokenT<GlobalAlgBlkBxCollection> l1tStage2uGtProducer_; // input tag for L1 uGT DAQ readout record
51 
53  bool verbose_;
54 
55  // To get the algo bits corresponding to algo names
56  std::shared_ptr<l1t::L1TGlobalUtil> gtUtil_;
57 
58  // For the timing histograms
65  const unsigned int bxrange_; //this is the out bx range
66 
67  unsigned int useAlgoDecision_;
68 
69  std::vector<double> egammaPtCuts_;
70  double jetPtCut_;
71  double egammaPtCut_;
72  double tauPtCut_;
73  double etsumPtCut_;
74  double muonPtCut_;
76 
77  //---------Histograms booking---------
78  // All bunches
79  std::vector<MonitorElement*> muons_eta_phi;
80  std::vector<MonitorElement*> jet_eta_phi;
81  std::vector<MonitorElement*> egamma_eta_phi;
82  std::vector<MonitorElement*> tau_eta_phi;
83  std::vector<MonitorElement*> etsum_eta_phi_MET;
84  std::vector<MonitorElement*> etsum_eta_phi_METHF;
85  std::vector<MonitorElement*> etsum_eta_phi_MHT;
86  std::vector<MonitorElement*> etsum_eta_phi_MHTHF;
87 
96 
97  // Isolated bunches
98  std::vector<MonitorElement*> muons_eta_phi_isolated;
99  std::vector<MonitorElement*> jet_eta_phi_isolated;
100  std::vector<std::vector<MonitorElement*>> egamma_eta_phi_isolated;
101  std::vector<MonitorElement*> tau_eta_phi_isolated;
102  std::vector<MonitorElement*> etsum_eta_phi_MET_isolated;
103  std::vector<MonitorElement*> etsum_eta_phi_METHF_isolated;
104  std::vector<MonitorElement*> etsum_eta_phi_MHT_isolated;
105  std::vector<MonitorElement*> etsum_eta_phi_MHTHF_isolated;
106 
109  std::vector<MonitorElement*> denominator_egamma_isolated;
115 
116  std::vector<MonitorElement*> egamma_iso_bx_ieta_isolated;
117  std::vector<MonitorElement*> egamma_noniso_bx_ieta_isolated;
118 
119  // First bunch in train
120  std::vector<MonitorElement*> muons_eta_phi_firstbunch;
121  std::vector<MonitorElement*> jet_eta_phi_firstbunch;
122  std::vector<std::vector<MonitorElement*>> egamma_eta_phi_firstbunch;
123  std::vector<MonitorElement*> tau_eta_phi_firstbunch;
124  std::vector<MonitorElement*> etsum_eta_phi_firstbunch;
125  std::vector<MonitorElement*> etsum_eta_phi_MET_firstbunch;
126  std::vector<MonitorElement*> etsum_eta_phi_METHF_firstbunch;
127  std::vector<MonitorElement*> etsum_eta_phi_MHT_firstbunch;
128  std::vector<MonitorElement*> etsum_eta_phi_MHTHF_firstbunch;
129 
132  std::vector<MonitorElement*> denominator_egamma_firstbunch;
138 
139  std::vector<MonitorElement*> egamma_iso_bx_ieta_firstbunch;
140  std::vector<MonitorElement*> egamma_noniso_bx_ieta_firstbunch;
141 
142  // Last bunch in train
143  std::vector<MonitorElement*> muons_eta_phi_lastbunch;
144  std::vector<MonitorElement*> jet_eta_phi_lastbunch;
145  std::vector<std::vector<MonitorElement*>> egamma_eta_phi_lastbunch;
146  std::vector<MonitorElement*> tau_eta_phi_lastbunch;
147  std::vector<MonitorElement*> etsum_eta_phi_MET_lastbunch;
148  std::vector<MonitorElement*> etsum_eta_phi_METHF_lastbunch;
149  std::vector<MonitorElement*> etsum_eta_phi_MHT_lastbunch;
150  std::vector<MonitorElement*> etsum_eta_phi_MHTHF_lastbunch;
151 
154  std::vector<MonitorElement*> denominator_egamma_lastbunch;
160 
161  std::vector<MonitorElement*> egamma_iso_bx_ieta_lastbunch;
162  std::vector<MonitorElement*> egamma_noniso_bx_ieta_lastbunch;
163 };
164 
165 #endif
ConfigurationDescriptions.h
L1TObjectsTiming::denominator_etsum_firstbunch_MHT
MonitorElement * denominator_etsum_firstbunch_MHT
Definition: L1TObjectsTiming.h:136
L1TObjectsTiming::~L1TObjectsTiming
~L1TObjectsTiming() override
Definition: L1TObjectsTiming.cc:49
L1TObjectsTiming::egammaPtCut_
double egammaPtCut_
Definition: L1TObjectsTiming.h:71
dqm::impl::MonitorElement
Definition: MonitorElement.h:99
L1TObjectsTiming::denominator_etsum_MHT
MonitorElement * denominator_etsum_MHT
Definition: L1TObjectsTiming.h:94
L1TObjectsTiming::L1TObjectsTiming
L1TObjectsTiming(const edm::ParameterSet &ps)
Definition: L1TObjectsTiming.cc:3
L1TObjectsTiming::muonPtCut_
double muonPtCut_
Definition: L1TObjectsTiming.h:74
L1TObjectsTiming::denominator_etsum_firstbunch_MHTHF
MonitorElement * denominator_etsum_firstbunch_MHTHF
Definition: L1TObjectsTiming.h:137
L1TObjectsTiming::muons_eta_phi
std::vector< MonitorElement * > muons_eta_phi
Definition: L1TObjectsTiming.h:79
MessageLogger.h
L1TObjectsTiming::egammaPtCuts_
std::vector< double > egammaPtCuts_
Definition: L1TObjectsTiming.h:69
BXVector.h
L1TObjectsTiming::etsum_eta_phi_MHT_isolated
std::vector< MonitorElement * > etsum_eta_phi_MHT_isolated
Definition: L1TObjectsTiming.h:104
L1TObjectsTiming::etsum_eta_phi_MHT_lastbunch
std::vector< MonitorElement * > etsum_eta_phi_MHT_lastbunch
Definition: L1TObjectsTiming.h:149
L1TObjectsTiming::etsum_eta_phi_MHTHF_firstbunch
std::vector< MonitorElement * > etsum_eta_phi_MHTHF_firstbunch
Definition: L1TObjectsTiming.h:128
L1TObjectsTiming::egamma_noniso_bx_ieta_lastbunch
std::vector< MonitorElement * > egamma_noniso_bx_ieta_lastbunch
Definition: L1TObjectsTiming.h:162
edm::Run
Definition: Run.h:45
L1TObjectsTiming::denominator_jet_isolated
MonitorElement * denominator_jet_isolated
Definition: L1TObjectsTiming.h:108
L1TObjectsTiming::etsum_eta_phi_MHTHF_lastbunch
std::vector< MonitorElement * > etsum_eta_phi_MHTHF_lastbunch
Definition: L1TObjectsTiming.h:150
L1TObjectsTiming::jetPtCut_
double jetPtCut_
Definition: L1TObjectsTiming.h:70
edm::EDGetTokenT
Definition: EDGetToken.h:33
L1TObjectsTiming::stage2CaloLayer2EtSumToken_
edm::EDGetTokenT< l1t::EtSumBxCollection > stage2CaloLayer2EtSumToken_
Definition: L1TObjectsTiming.h:48
L1TObjectsTiming::monitorDir_
std::string monitorDir_
Definition: L1TObjectsTiming.h:52
Muon.h
L1TObjectsTiming::denominator_etsum_isolated_METHF
MonitorElement * denominator_etsum_isolated_METHF
Definition: L1TObjectsTiming.h:112
L1TObjectsTiming::tau_eta_phi_firstbunch
std::vector< MonitorElement * > tau_eta_phi_firstbunch
Definition: L1TObjectsTiming.h:123
L1TObjectsTiming::egamma_eta_phi_isolated
std::vector< std::vector< MonitorElement * > > egamma_eta_phi_isolated
Definition: L1TObjectsTiming.h:100
L1TObjectsTiming::denominator_etsum_lastbunch_MHTHF
MonitorElement * denominator_etsum_lastbunch_MHTHF
Definition: L1TObjectsTiming.h:159
L1TObjectsTiming::etsumPtCut_
double etsumPtCut_
Definition: L1TObjectsTiming.h:73
L1TObjectsTiming::gtUtil_
std::shared_ptr< l1t::L1TGlobalUtil > gtUtil_
Definition: L1TObjectsTiming.h:56
L1TObjectsTiming::algoNameLastBxInTrain_
const std::string algoNameLastBxInTrain_
Definition: L1TObjectsTiming.h:63
Jet.h
L1TObjectsTiming::denominator_jet_firstbunch
MonitorElement * denominator_jet_firstbunch
Definition: L1TObjectsTiming.h:131
DQMStore.h
L1TObjectsTiming::denominator_etsum_MHTHF
MonitorElement * denominator_etsum_MHTHF
Definition: L1TObjectsTiming.h:95
L1TObjectsTiming::denominator_muons_isolated
MonitorElement * denominator_muons_isolated
Definition: L1TObjectsTiming.h:107
EDAnalyzer.h
L1TObjectsTiming::egamma_iso_bx_ieta_isolated
std::vector< MonitorElement * > egamma_iso_bx_ieta_isolated
Definition: L1TObjectsTiming.h:116
L1TObjectsTiming::etsum_eta_phi_MHTHF_isolated
std::vector< MonitorElement * > etsum_eta_phi_MHTHF_isolated
Definition: L1TObjectsTiming.h:105
L1TObjectsTiming::etsum_eta_phi_MET_lastbunch
std::vector< MonitorElement * > etsum_eta_phi_MET_lastbunch
Definition: L1TObjectsTiming.h:147
L1TObjectsTiming::etsum_eta_phi_MHT_firstbunch
std::vector< MonitorElement * > etsum_eta_phi_MHT_firstbunch
Definition: L1TObjectsTiming.h:127
L1TObjectsTiming::tau_eta_phi_isolated
std::vector< MonitorElement * > tau_eta_phi_isolated
Definition: L1TObjectsTiming.h:101
L1TObjectsTiming::egamma_eta_phi_firstbunch
std::vector< std::vector< MonitorElement * > > egamma_eta_phi_firstbunch
Definition: L1TObjectsTiming.h:122
L1TObjectsTiming::etsum_eta_phi_METHF
std::vector< MonitorElement * > etsum_eta_phi_METHF
Definition: L1TObjectsTiming.h:84
L1TObjectsTiming::verbose_
bool verbose_
Definition: L1TObjectsTiming.h:53
L1TObjectsTiming::jet_eta_phi_firstbunch
std::vector< MonitorElement * > jet_eta_phi_firstbunch
Definition: L1TObjectsTiming.h:121
L1TObjectsTiming::denominator_muons_lastbunch
MonitorElement * denominator_muons_lastbunch
Definition: L1TObjectsTiming.h:152
L1TObjectsTiming::denominator_egamma_lastbunch
std::vector< MonitorElement * > denominator_egamma_lastbunch
Definition: L1TObjectsTiming.h:154
L1TObjectsTiming::denominator_etsum_lastbunch_MHT
MonitorElement * denominator_etsum_lastbunch_MHT
Definition: L1TObjectsTiming.h:158
L1TObjectsTiming::jet_eta_phi_lastbunch
std::vector< MonitorElement * > jet_eta_phi_lastbunch
Definition: L1TObjectsTiming.h:144
L1TObjectsTiming::denominator_jet_lastbunch
MonitorElement * denominator_jet_lastbunch
Definition: L1TObjectsTiming.h:153
L1TObjectsTiming::algoBitFirstBxInTrain_
int algoBitFirstBxInTrain_
Definition: L1TObjectsTiming.h:59
L1TObjectsTiming::denominator_etsum_isolated_MHT
MonitorElement * denominator_etsum_isolated_MHT
Definition: L1TObjectsTiming.h:113
L1TObjectsTiming::useAlgoDecision_
unsigned int useAlgoDecision_
Definition: L1TObjectsTiming.h:67
L1TObjectsTiming::tau_eta_phi_lastbunch
std::vector< MonitorElement * > tau_eta_phi_lastbunch
Definition: L1TObjectsTiming.h:146
L1TObjectsTiming::denominator_etsum_lastbunch_METHF
MonitorElement * denominator_etsum_lastbunch_METHF
Definition: L1TObjectsTiming.h:157
L1TObjectsTiming::egamma_noniso_bx_ieta_firstbunch
std::vector< MonitorElement * > egamma_noniso_bx_ieta_firstbunch
Definition: L1TObjectsTiming.h:140
L1TObjectsTiming::muons_eta_phi_firstbunch
std::vector< MonitorElement * > muons_eta_phi_firstbunch
Definition: L1TObjectsTiming.h:120
L1TObjectsTiming::egamma_noniso_bx_ieta_isolated
std::vector< MonitorElement * > egamma_noniso_bx_ieta_isolated
Definition: L1TObjectsTiming.h:117
L1TObjectsTiming::etsum_eta_phi_METHF_lastbunch
std::vector< MonitorElement * > etsum_eta_phi_METHF_lastbunch
Definition: L1TObjectsTiming.h:148
EGamma.h
L1TObjectsTiming::etsum_eta_phi_MET
std::vector< MonitorElement * > etsum_eta_phi_MET
Definition: L1TObjectsTiming.h:83
Service.h
L1TObjectsTiming::denominator_tau
MonitorElement * denominator_tau
Definition: L1TObjectsTiming.h:91
L1TObjectsTiming::dqmBeginRun
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
Definition: L1TObjectsTiming.cc:79
L1TObjectsTiming::denominator_etsum_METHF
MonitorElement * denominator_etsum_METHF
Definition: L1TObjectsTiming.h:93
L1TObjectsTiming::stage2CaloLayer2JetToken_
edm::EDGetTokenT< l1t::JetBxCollection > stage2CaloLayer2JetToken_
Definition: L1TObjectsTiming.h:45
ParameterSetDescription.h
L1TObjectsTiming::tau_eta_phi
std::vector< MonitorElement * > tau_eta_phi
Definition: L1TObjectsTiming.h:82
L1TObjectsTiming::denominator_muons_firstbunch
MonitorElement * denominator_muons_firstbunch
Definition: L1TObjectsTiming.h:130
DQMEDAnalyzer.h
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
L1TObjectsTiming::stage2CaloLayer2EGammaToken_
edm::EDGetTokenT< l1t::EGammaBxCollection > stage2CaloLayer2EGammaToken_
Definition: L1TObjectsTiming.h:46
L1TObjectsTiming::denominator_etsum_firstbunch_METHF
MonitorElement * denominator_etsum_firstbunch_METHF
Definition: L1TObjectsTiming.h:135
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
L1TObjectsTiming::l1tStage2uGtProducer_
edm::EDGetTokenT< GlobalAlgBlkBxCollection > l1tStage2uGtProducer_
Definition: L1TObjectsTiming.h:50
edm::ParameterSet
Definition: ParameterSet.h:47
L1TObjectsTiming::bookHistograms
void bookHistograms(DQMStore::IBooker &, const edm::Run &, const edm::EventSetup &) override
Definition: L1TObjectsTiming.cc:100
Event.h
L1TObjectsTiming::etsum_eta_phi_METHF_isolated
std::vector< MonitorElement * > etsum_eta_phi_METHF_isolated
Definition: L1TObjectsTiming.h:103
L1TObjectsTiming::egamma_iso_bx_ieta_lastbunch
std::vector< MonitorElement * > egamma_iso_bx_ieta_lastbunch
Definition: L1TObjectsTiming.h:161
L1TObjectsTiming::bxrange_
const unsigned int bxrange_
Definition: L1TObjectsTiming.h:65
L1TObjectsTiming::etsum_eta_phi_firstbunch
std::vector< MonitorElement * > etsum_eta_phi_firstbunch
Definition: L1TObjectsTiming.h:124
L1TObjectsTiming::tauPtCut_
double tauPtCut_
Definition: L1TObjectsTiming.h:72
L1TObjectsTiming::jet_eta_phi_isolated
std::vector< MonitorElement * > jet_eta_phi_isolated
Definition: L1TObjectsTiming.h:99
L1TObjectsTiming::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: L1TObjectsTiming.cc:51
L1TObjectsTiming::denominator_etsum_lastbunch_MET
MonitorElement * denominator_etsum_lastbunch_MET
Definition: L1TObjectsTiming.h:156
L1TObjectsTiming::denominator_etsum_firstbunch_MET
MonitorElement * denominator_etsum_firstbunch_MET
Definition: L1TObjectsTiming.h:134
L1TObjectsTiming::muonQualCut_
int muonQualCut_
Definition: L1TObjectsTiming.h:75
L1TObjectsTiming::denominator_etsum_isolated_MET
MonitorElement * denominator_etsum_isolated_MET
Definition: L1TObjectsTiming.h:111
L1TObjectsTiming::algoNameFirstBxInTrain_
const std::string algoNameFirstBxInTrain_
Definition: L1TObjectsTiming.h:62
L1TObjectsTiming::etsum_eta_phi_METHF_firstbunch
std::vector< MonitorElement * > etsum_eta_phi_METHF_firstbunch
Definition: L1TObjectsTiming.h:126
L1TObjectsTiming::jet_eta_phi
std::vector< MonitorElement * > jet_eta_phi
Definition: L1TObjectsTiming.h:80
L1TObjectsTiming::etsum_eta_phi_MHT
std::vector< MonitorElement * > etsum_eta_phi_MHT
Definition: L1TObjectsTiming.h:85
edm::EventSetup
Definition: EventSetup.h:58
L1TObjectsTiming::egamma_eta_phi
std::vector< MonitorElement * > egamma_eta_phi
Definition: L1TObjectsTiming.h:81
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
L1TObjectsTiming::denominator_muons
MonitorElement * denominator_muons
Definition: L1TObjectsTiming.h:88
L1TObjectsTiming::denominator_tau_firstbunch
MonitorElement * denominator_tau_firstbunch
Definition: L1TObjectsTiming.h:133
L1TObjectsTiming::algoBitIsoBx_
int algoBitIsoBx_
Definition: L1TObjectsTiming.h:61
L1TObjectsTiming::etsum_eta_phi_MET_isolated
std::vector< MonitorElement * > etsum_eta_phi_MET_isolated
Definition: L1TObjectsTiming.h:102
L1TObjectsTiming::denominator_egamma
MonitorElement * denominator_egamma
Definition: L1TObjectsTiming.h:90
L1TObjectsTiming::egamma_eta_phi_lastbunch
std::vector< std::vector< MonitorElement * > > egamma_eta_phi_lastbunch
Definition: L1TObjectsTiming.h:145
Frameworkfwd.h
L1TObjectsTiming::egamma_iso_bx_ieta_firstbunch
std::vector< MonitorElement * > egamma_iso_bx_ieta_firstbunch
Definition: L1TObjectsTiming.h:139
L1TObjectsTiming::algoNameIsoBx_
const std::string algoNameIsoBx_
Definition: L1TObjectsTiming.h:64
L1TObjectsTiming::denominator_tau_lastbunch
MonitorElement * denominator_tau_lastbunch
Definition: L1TObjectsTiming.h:155
L1TObjectsTiming::muons_eta_phi_lastbunch
std::vector< MonitorElement * > muons_eta_phi_lastbunch
Definition: L1TObjectsTiming.h:143
EventSetup.h
dqm::implementation::IBooker
Definition: DQMStore.h:43
L1TGlobalUtil.h
L1TObjectsTiming::etsum_eta_phi_MET_firstbunch
std::vector< MonitorElement * > etsum_eta_phi_MET_firstbunch
Definition: L1TObjectsTiming.h:125
L1TObjectsTiming::denominator_etsum_isolated_MHTHF
MonitorElement * denominator_etsum_isolated_MHTHF
Definition: L1TObjectsTiming.h:114
L1TObjectsTiming::denominator_etsum_MET
MonitorElement * denominator_etsum_MET
Definition: L1TObjectsTiming.h:92
L1TObjectsTiming::ugmtMuonToken_
edm::EDGetTokenT< l1t::MuonBxCollection > ugmtMuonToken_
Definition: L1TObjectsTiming.h:44
L1TObjectsTiming::denominator_jet
MonitorElement * denominator_jet
Definition: L1TObjectsTiming.h:89
L1TObjectsTiming::stage2CaloLayer2TauToken_
edm::EDGetTokenT< l1t::TauBxCollection > stage2CaloLayer2TauToken_
Definition: L1TObjectsTiming.h:47
ParameterSet.h
L1TObjectsTiming::etsum_eta_phi_MHTHF
std::vector< MonitorElement * > etsum_eta_phi_MHTHF
Definition: L1TObjectsTiming.h:86
EtSum.h
L1TObjectsTiming::denominator_egamma_firstbunch
std::vector< MonitorElement * > denominator_egamma_firstbunch
Definition: L1TObjectsTiming.h:132
L1TObjectsTiming::algoBitLastBxInTrain_
int algoBitLastBxInTrain_
Definition: L1TObjectsTiming.h:60
edm::Event
Definition: Event.h:73
L1TObjectsTiming
Definition: L1TObjectsTiming.h:32
L1TObjectsTiming::denominator_egamma_isolated
std::vector< MonitorElement * > denominator_egamma_isolated
Definition: L1TObjectsTiming.h:109
L1TObjectsTiming::muons_eta_phi_isolated
std::vector< MonitorElement * > muons_eta_phi_isolated
Definition: L1TObjectsTiming.h:98
L1TObjectsTiming::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: L1TObjectsTiming.cc:786
L1TObjectsTiming::denominator_tau_isolated
MonitorElement * denominator_tau_isolated
Definition: L1TObjectsTiming.h:110
Tau.h