CMS 3D CMS Logo

L1TdeGCT.h
Go to the documentation of this file.
1 #ifndef L1TdeGCT_H
2 #define L1TdeGCT_H
3 
4 /*\class L1TdeGCT
5  *\description GCT data|emulation comparison DQM interface
6  produces expert level DQM monitorable elements
7  *\author N.Leonardo
8  *\date 08.09
9  */
10 
11 // system, common includes
12 #include <memory>
13 #include <string>
21 // dqm includes
23 // l1 dataformats, d|e record includes
26 
27 class L1TdeGCT : public DQMEDAnalyzer {
28 public:
29  explicit L1TdeGCT(const edm::ParameterSet&);
30  ~L1TdeGCT() override;
31 
32 protected:
33  void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override;
34  void bookHistograms(DQMStore::IBooker& ibooker, edm::Run const&, edm::EventSetup const&) override;
35 
36  void analyze(const edm::Event&, const edm::EventSetup&) override;
37 
38 private:
39  // input d|e record
41  bool hasRecord_;
42 
43  // debug verbose level
44  int verbose_;
45  int verbose() { return verbose_; }
46 
47  // root output file name
49 
50  // dqm histogram folder
52 
54 
55  // dqm common
57 
58  // (em) iso, no-iso, (jets) cen, for, tau & energy sums.
59  static const int nGctColl_ = dedefs::GCThfbit - dedefs::GCTisolaem + 1;
60  static const int nStage1Layer2Coll_ = dedefs::GCTisotaujets - dedefs::GCTisolaem + 1;
61 
62  // counters
65 
68 
69  // Ranges and labels
70  const int phiNBins = 18;
71  const double phiMinim = -0.5;
72  const double phiMaxim = 17.5;
73  const int etaNBins = 22;
74  const double etaMinim = -0.5;
75  const double etaMaxim = 21.5;
76  static const int nerr = 5;
77  const int nbit = 32;
79  "IsoEM", "NoisoEM", "CenJet", "ForJet", "TauJet", "HT", "MET", "ET", "MHT", "HFSums", "HFCnts"};
81  "IsoEM", "NoisoEM", "CenJet", "ForJet", "TauJet", "HT", "MET", "ET", "MHT", "Stage1HFSums", "HFCnts", "IsoTauJet"};
82  std::string errLabel[nerr] = {"Agree", "Loc. Agree", "L.Disagree", "Data only", "Emul only"};
83 
84  // MEs
87 
89  // location
97 
99  // location
107 
108  // trigger data word
109 
118 
119 public:
120 };
121 
122 #endif
MonitorElement * phiData_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:105
int nWithCol[nGctColl_]
Definition: L1TdeGCT.h:64
int colCount[nGctColl_]
Definition: L1TdeGCT.h:63
int colCount_stage1Layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:66
MonitorElement * eta_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:101
MonitorElement * phi_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:102
bool monitorDaemon_
Definition: L1TdeGCT.h:56
const double etaMaxim
Definition: L1TdeGCT.h:75
int verbose_
Definition: L1TdeGCT.h:44
MonitorElement * masked_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:117
MonitorElement * phiData[nGctColl_]
Definition: L1TdeGCT.h:95
MonitorElement * eword_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:115
MonitorElement * masked[nGctColl_]
Definition: L1TdeGCT.h:113
bool m_stage1_layer2_
Definition: L1TdeGCT.h:53
std::string histFile_
Definition: L1TdeGCT.h:48
const int nbit
Definition: L1TdeGCT.h:77
MonitorElement * phi[nGctColl_]
Definition: L1TdeGCT.h:92
MonitorElement * eta[nGctColl_]
Definition: L1TdeGCT.h:91
MonitorElement * sysrates
Definition: L1TdeGCT.h:85
MonitorElement * dword_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:114
const int etaNBins
Definition: L1TdeGCT.h:73
static const int nGctColl_
Definition: L1TdeGCT.h:59
L1TdeGCT(const edm::ParameterSet &)
Definition: L1TdeGCT.cc:10
MonitorElement * rnk_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:103
MonitorElement * etaData[nGctColl_]
Definition: L1TdeGCT.h:94
const int phiNBins
Definition: L1TdeGCT.h:70
MonitorElement * rnk[nGctColl_]
Definition: L1TdeGCT.h:93
int nWithCol_stage1Layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:67
MonitorElement * errortype[nGctColl_]
Definition: L1TdeGCT.h:88
bool hasRecord_
Definition: L1TdeGCT.h:41
const double phiMaxim
Definition: L1TdeGCT.h:72
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
Definition: L1TdeGCT.cc:37
MonitorElement * rnkData[nGctColl_]
Definition: L1TdeGCT.h:96
MonitorElement * sysncand[2]
Definition: L1TdeGCT.h:86
MonitorElement * errortype_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:98
~L1TdeGCT() override
Definition: L1TdeGCT.cc:35
MonitorElement * rnkData_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:106
MonitorElement * dword[nGctColl_]
Definition: L1TdeGCT.h:110
const double etaMinim
Definition: L1TdeGCT.h:74
static const int nerr
Definition: L1TdeGCT.h:76
MonitorElement * etaphi_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:100
std::string sLabel[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:80
std::string cLabel[nGctColl_]
Definition: L1TdeGCT.h:78
edm::EDGetTokenT< L1DataEmulRecord > DEsource_
Definition: L1TdeGCT.h:40
const double phiMinim
Definition: L1TdeGCT.h:71
MonitorElement * deword[nGctColl_]
Definition: L1TdeGCT.h:112
MonitorElement * deword_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:116
MonitorElement * eword[nGctColl_]
Definition: L1TdeGCT.h:111
MonitorElement * etaData_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:104
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: L1TdeGCT.cc:338
MonitorElement * etaphi[nGctColl_]
Definition: L1TdeGCT.h:90
static const int nStage1Layer2Coll_
Definition: L1TdeGCT.h:60
std::string histFolder_
Definition: L1TdeGCT.h:51
int verbose()
Definition: L1TdeGCT.h:45
Definition: Run.h:45
std::string errLabel[nerr]
Definition: L1TdeGCT.h:82
void bookHistograms(DQMStore::IBooker &ibooker, edm::Run const &, edm::EventSetup const &) override
Definition: L1TdeGCT.cc:39