CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
L1TdeRCT.h
Go to the documentation of this file.
1 #ifndef L1TdeRCT_H
2 #define L1TdeRCT_H
3 
4 // system include files
5 #include <memory>
6 #include <unistd.h>
7 
8 #include <iostream>
9 #include <fstream>
10 #include <vector>
11 #include <bitset>
12 
13 // user include files
16 
19 
21 
24 
25 // DQM
27 
28 // GCT and RCT data formats
35 // TPGs
38 
40 
41 class RunInfoRcd;
42 class RunInfo;
43 // Trigger Headers
44 //
45 // class declaration
46 //
47 namespace l1tderct {
48  struct Empty {};
49 } // namespace l1tderct
50 
51 class L1TdeRCT : public DQMOneEDAnalyzer<edm::LuminosityBlockCache<l1tderct::Empty>> {
52 public:
53  // Constructor
54  L1TdeRCT(const edm::ParameterSet& ps);
55 
56  // Destructor
57  ~L1TdeRCT() override;
58 
59 protected:
60  // Analyze
61  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
62 
63  //For FED vector monitoring
64  void bookHistograms(DQMStore::IBooker& ibooker, const edm::Run&, const edm::EventSetup&) override;
65  std::shared_ptr<l1tderct::Empty> globalBeginLuminosityBlock(const edm::LuminosityBlock&,
66  const edm::EventSetup&) const override;
68  void readFEDVector(MonitorElement*, const edm::EventSetup&, const bool isLumitransition = true) const;
69 
70 private:
71  // ----------member data ---------------------------
72 
73  // begin GT decision information
75 
76  // trigger type information
78 
79  // begin region information
87 
93 
99  // MonitorElement *rctRegDeltaEt2D_;
102 
108 
112 
113  // end region information
114 
115  // begin bit information
145  // QUIETBIT: To add quiet bit information, uncomment following 3 lines:
146  // MonitorElement *rctBitQuietEff2D_;
147  // MonitorElement *rctBitQuietIneff2D_;
148  // MonitorElement *rctBitQuietOvereff2D_;
157 
158  // end bit information
159 
166 
179 
192 
196 
209 
222 
226 
230 
234 
235  // begin region channel information
239 
240  //efficiency
247 
248  // end region channel information
249 
250  //begin fed vector information
251  static const int crateFED[108];
255 
256  int nev_; // Number of events processed
257  std::string histFolder_; // base dqm folder
258  bool verbose_;
260  bool perLSsaving_; //to avoid nanoDQMIO crashing, driven by DQMServices/Core/python/DQMStore_cfi.py
261 
273  std::string gtEGAlgoName_; // name of algo to determine EG trigger threshold
274  int doubleThreshold_; // value of ET at which to make 2-D eff plot
275 
279 
281 
283 
284 protected:
287 };
288 
289 #endif
MonitorElement * rctBitUnmatchedDataTauVeto2D_
Definition: L1TdeRCT.h:128
void DivideME2D(MonitorElement *numerator, MonitorElement *denominator, MonitorElement *result)
Definition: L1TdeRCT.cc:1122
MonitorElement * rctRegUnmatchedDataOcc1D_
Definition: L1TdeRCT.h:83
MonitorElement * rctIsoEmBitDiff_
Definition: L1TdeRCT.h:195
MonitorElement * rctRegMatchedOcc1D_
Definition: L1TdeRCT.h:82
MonitorElement * rctNisoEmEmulOcc1D_
Definition: L1TdeRCT.h:211
MonitorElement * rctNisoEmIneff2oneD_
Definition: L1TdeRCT.h:219
MonitorElement * rctNisoEmIneff1D_
Definition: L1TdeRCT.h:220
static const int crateFED[108]
Definition: L1TdeRCT.h:251
MonitorElement * rctNisoEmEff2Occ1D_
Definition: L1TdeRCT.h:213
MonitorElement * rctInputTPGHcalOcc_
Definition: L1TdeRCT.h:163
const edm::EventSetup & c
MonitorElement * rctNisoEmEff2oneD_
Definition: L1TdeRCT.h:218
MonitorElement * rctNisoEmIneff2Occ1D_
Definition: L1TdeRCT.h:214
list numerator
Definition: cuy.py:484
int selectBX_
Definition: L1TdeRCT.h:278
MonitorElement * rctBitMatchedTauVeto2D_
Definition: L1TdeRCT.h:126
MonitorElement * rctBitDataMip2D_
Definition: L1TdeRCT.h:133
MonitorElement * rctBitUnmatchedDataHfPlusTau2D_
Definition: L1TdeRCT.h:153
int nev_
Definition: L1TdeRCT.h:256
edm::EDGetTokenT< L1CaloRegionCollection > gctSourceData_rgnData_
Definition: L1TdeRCT.h:266
MonitorElement * rctBitEmulTauVeto2D_
Definition: L1TdeRCT.h:124
MonitorElement * rctIsoEmIneff2Occ_
Definition: L1TdeRCT.h:171
edm::ESGetToken< RunInfo, RunInfoRcd > runInfolumiToken_
Definition: L1TdeRCT.h:272
MonitorElement * trigEffThresh_
Definition: L1TdeRCT.h:241
MonitorElement * rctBitHfPlusTauIneff2D_
Definition: L1TdeRCT.h:155
bool verbose_
Definition: L1TdeRCT.h:258
MonitorElement * rctIsoEmIneff2Occ1D_
Definition: L1TdeRCT.h:184
MonitorElement * rctIsoEmEmulOcc1D_
Definition: L1TdeRCT.h:181
MonitorElement * rctBitUnmatchedEmulTauVeto2D_
Definition: L1TdeRCT.h:127
edm::EDGetTokenT< L1CaloEmCollection > rctSourceData_emData_
Definition: L1TdeRCT.h:265
MonitorElement * rctBitUnmatchedEmulQuiet2D_
Definition: L1TdeRCT.h:143
MonitorElement * trigEffThreshOcc_
Definition: L1TdeRCT.h:242
MonitorElement * rctNisoEffChannel_[396]
Definition: L1TdeRCT.h:231
MonitorElement * rctRegOvereff1D_
Definition: L1TdeRCT.h:90
int doubleThreshold_
Definition: L1TdeRCT.h:274
MonitorElement * rctIsoEmEff2_
Definition: L1TdeRCT.h:175
MonitorElement * rctNisoEmOvereffOcc1D_
Definition: L1TdeRCT.h:216
MonitorElement * trigEffOcc_[396]
Definition: L1TdeRCT.h:245
MonitorElement * rctRegOvereff2D_
Definition: L1TdeRCT.h:105
MonitorElement * rctIsoEmOvereffOcc1D_
Definition: L1TdeRCT.h:186
MonitorElement * triggerType_
Definition: L1TdeRCT.h:77
MonitorElement * rctBitTauVetoEff2D_
Definition: L1TdeRCT.h:129
MonitorElement * rctBitMatchedQuiet2D_
Definition: L1TdeRCT.h:142
MonitorElement * rctBitTauVetoOvereff2D_
Definition: L1TdeRCT.h:131
MonitorElement * rctRegDataOcc1D_
Definition: L1TdeRCT.h:80
MonitorElement * rctIsoEmIneffOcc_
Definition: L1TdeRCT.h:172
MonitorElement * rctBitDataQuiet2D_
Definition: L1TdeRCT.h:141
MonitorElement * rctBitMatchedHfPlusTau2D_
Definition: L1TdeRCT.h:151
MonitorElement * rctIsoEmEff2Occ_
Definition: L1TdeRCT.h:170
MonitorElement * rctRegEmulOcc2D_
Definition: L1TdeRCT.h:95
MonitorElement * rctRegUnmatchedEmulOcc2D_
Definition: L1TdeRCT.h:98
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > gtDigisLabel_
Definition: L1TdeRCT.h:270
std::string histFolder_
Definition: L1TdeRCT.h:257
MonitorElement * rctRegSpEff2D_
Definition: L1TdeRCT.h:106
MonitorElement * rctBitUnmatchedEmulOverFlow2D_
Definition: L1TdeRCT.h:119
MonitorElement * rctIsoEmBitOn_
Definition: L1TdeRCT.h:193
MonitorElement * rctRegIneff2D_
Definition: L1TdeRCT.h:104
MonitorElement * rctIsoEmEff2Occ1D_
Definition: L1TdeRCT.h:183
bool singlechannelhistos_
Definition: L1TdeRCT.h:259
MonitorElement * rctBitMipIneff2D_
Definition: L1TdeRCT.h:138
MonitorElement * rctBitOverFlowOvereff2D_
Definition: L1TdeRCT.h:123
tuple result
Definition: mps_fire.py:311
MonitorElement * rctInputTPGHcalSample_
Definition: L1TdeRCT.h:165
MonitorElement * rctIsoEmOvereff_
Definition: L1TdeRCT.h:178
MonitorElement * rctBitDataOverFlow2D_
Definition: L1TdeRCT.h:117
MonitorElement * rctIsoEmDataOcc_
Definition: L1TdeRCT.h:167
MonitorElement * fedVectorMonitorLS_
Definition: L1TdeRCT.h:253
MonitorElement * rctNisoEmEff1oneD_
Definition: L1TdeRCT.h:217
edm::EDGetTokenT< HcalTrigPrimDigiCollection > hcalTPGData_
Definition: L1TdeRCT.h:269
MonitorElement * rctNisoEmIneff2Occ_
Definition: L1TdeRCT.h:201
MonitorElement * rctNisoEmOvereffOcc_
Definition: L1TdeRCT.h:203
MonitorElement * rctRegBitOn_
Definition: L1TdeRCT.h:109
MonitorElement * rctRegBitDiff_
Definition: L1TdeRCT.h:111
MonitorElement * rctNisoEmDataOcc_
Definition: L1TdeRCT.h:197
MonitorElement * rctNisoEmIneff2_
Definition: L1TdeRCT.h:206
MonitorElement * rctBitDataHfPlusTau2D_
Definition: L1TdeRCT.h:150
list denominator
Definition: cuy.py:485
std::string gtEGAlgoName_
Definition: L1TdeRCT.h:273
void DivideME1D(MonitorElement *numerator, MonitorElement *denominator, MonitorElement *result)
Definition: L1TdeRCT.cc:1130
MonitorElement * rctRegIneffChannel_[396]
Definition: L1TdeRCT.h:237
MonitorElement * rctInputTPGEcalOcc_
Definition: L1TdeRCT.h:160
MonitorElement * rctRegDataOcc2D_
Definition: L1TdeRCT.h:94
MonitorElement * rctInputTPGEcalRank_
Definition: L1TdeRCT.h:162
MonitorElement * rctIsoEmIneff1D_
Definition: L1TdeRCT.h:190
MonitorElement * rctBitMipOvereff2D_
Definition: L1TdeRCT.h:139
MonitorElement * trigEff_[396]
Definition: L1TdeRCT.h:244
MonitorElement * rctBitMatchedOverFlow2D_
Definition: L1TdeRCT.h:118
MonitorElement * rctBitEmulOverFlow2D_
Definition: L1TdeRCT.h:116
MonitorElement * rctRegEmulOcc1D_
Definition: L1TdeRCT.h:81
edm::EDGetTokenT< EcalTrigPrimDigiCollection > ecalTPGData_
Definition: L1TdeRCT.h:268
MonitorElement * rctIsoEmBitOff_
Definition: L1TdeRCT.h:194
MonitorElement * fedVectorMonitorRUN_
Definition: L1TdeRCT.h:252
MonitorElement * rctBitEmulMip2D_
Definition: L1TdeRCT.h:132
MonitorElement * rctIsoEmIneff2_
Definition: L1TdeRCT.h:176
MonitorElement * rctBitEmulQuiet2D_
Definition: L1TdeRCT.h:140
MonitorElement * rctNisoEmEmulOcc_
Definition: L1TdeRCT.h:198
MonitorElement * rctBitEmulHfPlusTau2D_
Definition: L1TdeRCT.h:149
MonitorElement * triggerAlgoNumbers_
Definition: L1TdeRCT.h:74
void readFEDVector(MonitorElement *, const edm::EventSetup &, const bool isLumitransition=true) const
Definition: L1TdeRCT.cc:2097
MonitorElement * rctNisoIneffChannel_[396]
Definition: L1TdeRCT.h:232
MonitorElement * rctRegSpIneff2D_
Definition: L1TdeRCT.h:107
edm::EDGetTokenT< L1CaloEmCollection > gctSourceData_emData_
Definition: L1TdeRCT.h:267
MonitorElement * rctIsoEmEmulOcc_
Definition: L1TdeRCT.h:168
MonitorElement * rctIsoEmEff1Occ_
Definition: L1TdeRCT.h:169
std::string dataInputTagName_
Definition: L1TdeRCT.h:280
MonitorElement * rctNisoEmOvereff1D_
Definition: L1TdeRCT.h:221
MonitorElement * rctNisoEmEff2Occ_
Definition: L1TdeRCT.h:200
MonitorElement * rctBitUnmatchedEmulHfPlusTau2D_
Definition: L1TdeRCT.h:152
MonitorElement * rctRegEff1D_
Definition: L1TdeRCT.h:88
MonitorElement * rctBitMatchedMip2D_
Definition: L1TdeRCT.h:134
MonitorElement * rctNisoEmEff2_
Definition: L1TdeRCT.h:205
std::shared_ptr< l1tderct::Empty > globalBeginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) const override
Definition: L1TdeRCT.cc:2090
MonitorElement * rctRegSpEff1D_
Definition: L1TdeRCT.h:91
MonitorElement * rctIsoEmEff1Occ1D_
Definition: L1TdeRCT.h:182
MonitorElement * rctIsoEmEff1oneD_
Definition: L1TdeRCT.h:187
int notrigCount
Definition: L1TdeRCT.h:282
MonitorElement * rctNisoEmIneff_
Definition: L1TdeRCT.h:207
MonitorElement * rctRegSpEffOcc1D_
Definition: L1TdeRCT.h:85
MonitorElement * rctRegMatchedOcc2D_
Definition: L1TdeRCT.h:96
MonitorElement * rctNIsoEmBitDiff_
Definition: L1TdeRCT.h:225
MonitorElement * rctBitHfPlusTauOvereff2D_
Definition: L1TdeRCT.h:156
MonitorElement * rctNisoEmEff1Occ_
Definition: L1TdeRCT.h:199
~L1TdeRCT() override
Definition: L1TdeRCT.cc:112
MonitorElement * rctIsoEmOvereff1D_
Definition: L1TdeRCT.h:191
MonitorElement * rctIsoEmEff1_
Definition: L1TdeRCT.h:174
MonitorElement * rctBitTauVetoIneff2D_
Definition: L1TdeRCT.h:130
MonitorElement * rctInputTPGHcalRank_
Definition: L1TdeRCT.h:164
MonitorElement * trigEffTriggThreshOcc_
Definition: L1TdeRCT.h:243
MonitorElement * rctIsoEmIneffOcc1D_
Definition: L1TdeRCT.h:185
MonitorElement * rctRegEffChannel_[396]
Definition: L1TdeRCT.h:236
MonitorElement * rctBitHfPlusTauEff2D_
Definition: L1TdeRCT.h:154
MonitorElement * rctNisoEmIneffOcc1D_
Definition: L1TdeRCT.h:215
MonitorElement * rctRegOvereffChannel_[396]
Definition: L1TdeRCT.h:238
MonitorElement * rctBitOverFlowIneff2D_
Definition: L1TdeRCT.h:122
void globalEndLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) final
Definition: L1TdeRCT.h:67
MonitorElement * rctRegSpIneffOcc1D_
Definition: L1TdeRCT.h:86
MonitorElement * rctBitUnmatchedDataMip2D_
Definition: L1TdeRCT.h:136
L1TdeRCT(const edm::ParameterSet &ps)
Definition: L1TdeRCT.cc:80
MonitorElement * trigEffTriggOcc_[396]
Definition: L1TdeRCT.h:246
MonitorElement * rctBitMipEff2D_
Definition: L1TdeRCT.h:137
MonitorElement * rctIsoEmIneff2oneD_
Definition: L1TdeRCT.h:189
MonitorElement * rctRegUnmatchedDataOcc2D_
Definition: L1TdeRCT.h:97
MonitorElement * rctBitUnmatchedEmulMip2D_
Definition: L1TdeRCT.h:135
MonitorElement * rctBitOverFlowEff2D_
Definition: L1TdeRCT.h:121
MonitorElement * rctNIsoEmBitOff_
Definition: L1TdeRCT.h:224
edm::EDGetTokenT< L1CaloRegionCollection > rctSourceEmul_rgnEmul_
Definition: L1TdeRCT.h:262
MonitorElement * rctIsoIneffChannel_[396]
Definition: L1TdeRCT.h:228
void bookHistograms(DQMStore::IBooker &ibooker, const edm::Run &, const edm::EventSetup &) override
Definition: L1TdeRCT.cc:1138
MonitorElement * rctRegSpEffOcc2D_
Definition: L1TdeRCT.h:100
MonitorElement * rctIsoEmOvereffOcc_
Definition: L1TdeRCT.h:173
MonitorElement * rctNisoEmDataOcc1D_
Definition: L1TdeRCT.h:210
edm::EDGetTokenT< L1CaloRegionCollection > rctSourceData_rgnData_
Definition: L1TdeRCT.h:264
MonitorElement * rctNIsoEmBitOn_
Definition: L1TdeRCT.h:223
MonitorElement * rctRegIneff1D_
Definition: L1TdeRCT.h:89
MonitorElement * rctNisoEmEff1Occ1D_
Definition: L1TdeRCT.h:212
MonitorElement * rctIsoEmDataOcc1D_
Definition: L1TdeRCT.h:180
edm::ESGetToken< RunInfo, RunInfoRcd > runInfoToken_
Definition: L1TdeRCT.h:271
MonitorElement * rctBitDataTauVeto2D_
Definition: L1TdeRCT.h:125
MonitorElement * rctIsoEffChannel_[396]
Definition: L1TdeRCT.h:227
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: L1TdeRCT.cc:114
MonitorElement * rctNisoEmOvereff_
Definition: L1TdeRCT.h:208
MonitorElement * rctRegEff2D_
Definition: L1TdeRCT.h:103
int filterTriggerType_
filter TriggerType
Definition: L1TdeRCT.h:277
MonitorElement * rctInputTPGEcalOccNoCut_
Definition: L1TdeRCT.h:161
MonitorElement * rctNisoOvereffChannel_[396]
Definition: L1TdeRCT.h:233
MonitorElement * rctNisoEmIneffOcc_
Definition: L1TdeRCT.h:202
MonitorElement * rctIsoEmEff2oneD_
Definition: L1TdeRCT.h:188
edm::EDGetTokenT< L1CaloEmCollection > rctSourceEmul_emEmul_
Definition: L1TdeRCT.h:263
MonitorElement * rctBitUnmatchedDataQuiet2D_
Definition: L1TdeRCT.h:144
Definition: Run.h:45
int trigCount
Definition: L1TdeRCT.h:282
MonitorElement * rctRegSpIneff1D_
Definition: L1TdeRCT.h:92
MonitorElement * rctRegSpIneffOcc2D_
Definition: L1TdeRCT.h:101
MonitorElement * rctRegBitOff_
Definition: L1TdeRCT.h:110
MonitorElement * rctIsoEmIneff_
Definition: L1TdeRCT.h:177
bool perLSsaving_
Definition: L1TdeRCT.h:260
MonitorElement * rctRegUnmatchedEmulOcc1D_
Definition: L1TdeRCT.h:84
MonitorElement * rctBitUnmatchedDataOverFlow2D_
Definition: L1TdeRCT.h:120
MonitorElement * rctIsoOvereffChannel_[396]
Definition: L1TdeRCT.h:229
MonitorElement * rctNisoEmEff1_
Definition: L1TdeRCT.h:204