CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1TGT.h
Go to the documentation of this file.
1 #ifndef L1TGT_H
2 #define L1TGT_H
3 
16 // system include files
17 #include <memory>
18 #include <unistd.h>
19 #include <vector>
20 #include <utility>
21 
22 // user include files
25 
28 
30 
35 
36 //L1 trigger includes
39 
40 
41 //
42 // class declaration
43 //
44 
45 class L1TGT: public edm::EDAnalyzer {
46 
47 public:
48 
49  // constructor
50  L1TGT(const edm::ParameterSet& ps);
51 
52  // destructor
53  virtual ~L1TGT();
54 
55 private:
56 
57  virtual void beginJob();
58  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
59  virtual void beginLuminosityBlock(const edm::LuminosityBlock&,
60  const edm::EventSetup&);
61 
62  virtual void analyze(const edm::Event&, const edm::EventSetup&);
63 
65  virtual void endLuminosityBlock(const edm::LuminosityBlock&,
66  const edm::EventSetup&);
67  virtual void endRun(const edm::Run&, const edm::EventSetup&);
68 
69  virtual void endJob();
70 
71 private:
72 
74  void bookHistograms();
75 
76  bool isActive(int word, int bit);
77  // Active boards DAQ record bit number:
78  // 0 FDL
79  // 1 PSB_0 9 Techn.Triggers for FDL
80  // 2 PSB_1 13 Calo data for GTL
81  // 3 PSB_2 14 Calo data for GTL
82  // 4 PSB_3 15 Calo data for GTL
83  // 5 PSB_4 19 M/Q bits for GMT
84  // 6 PSB_5 20 M/Q bits for GMT
85  // 7 PSB_6 21 M/Q bits for GMT
86  // 8 GMT
87  enum activeDAQ {
89  };
90  // Active boards EVM record bit number:
91  // 0 TCS
92  // 1 FDL
93  enum activeEVM {
95  };
96 
97  // count the number of indices per Ls for prescale factor sets
98  // if no errors, it must be 1
99  void countPfsIndicesPerLs();
100 
101 
102 private:
103 
105 
109 
112 
118 
119 
121  bool verbose_;
122 
123 private:
124 
133 
141 
144 
155 
158 
161  // maximum difference in orbit number, luminosity number
162  // histogram range: -(MaxOrbitNrDiffTcsFdlEvm+1), (MaxOrbitNrDiffTcsFdlEvm+1)
163  // if value is greater than the maximum difference, fill an entry in the last but one bin
164  // if value is smaller than the negative value of maximum difference, fill an entry
165  // in the second bin
166  // if no value can be retrieved for TCS, fill an entry in the first bin
167  // if no value can be retrieved for FDL, fill an entry in the last bin
168  static const int MaxOrbitNrDiffTcsFdlEvm;
169  static const int MaxLsNrDiffTcsFdlEvm;
170 
173 
174  //MonitorElement* m_monDiffEvmDaqFdl;
175 
176 private:
177 
179 
181 
185 
188 
191 
192 
193  std::vector<std::pair<int,int> > m_pairLsNumberPfIndex;
194  typedef std::vector<std::pair<int, int> >::const_iterator CItVecPair;
195 
196 
197 };
198 
199 #endif
MonitorElement * m_monL1PrescaleFactorSet
Definition: L1TGT.h:156
MonitorElement * gpsfreqwide
Definition: L1TGT.h:153
bool m_runInEndRun
Definition: L1TGT.h:116
int m_nrEvRun
Definition: L1TGT.h:184
boost::uint64_t preGps_
Definition: L1TGT.h:189
virtual void endJob()
Definition: L1TGT.cc:468
Definition: L1TGT.h:45
DQMStore * m_dbe
internal members
Definition: L1TGT.h:180
MonitorElement * m_monLsNrDiffTcsFdlEvmLs
Definition: L1TGT.h:172
std::vector< std::pair< int, int > >::const_iterator CItVecPair
Definition: L1TGT.h:194
activeEVM
Definition: L1TGT.h:93
std::vector< std::pair< int, int > > m_pairLsNumberPfIndex
Definition: L1TGT.h:193
MonitorElement * BST_intensityBeam1
Definition: L1TGT.h:150
static const int MaxOrbitNrDiffTcsFdlEvm
Definition: L1TGT.h:168
MonitorElement * algo_bits_corr
Definition: L1TGT.h:126
MonitorElement * tt_bits
Definition: L1TGT.h:127
bool verbose_
verbosity switch
Definition: L1TGT.h:121
MonitorElement * gtfe_bx
Definition: L1TGT.h:142
MonitorElement * BST_beamMode
Definition: L1TGT.h:148
bool m_runInEventLoop
switches to choose the running of various methods
Definition: L1TGT.h:114
MonitorElement * BST_MasterStatus
Definition: L1TGT.h:145
MonitorElement * BST_intensityBeam2
Definition: L1TGT.h:151
void bookHistograms()
book all histograms for the module
Definition: L1TGT.cc:483
MonitorElement * event_number
Definition: L1TGT.h:134
activeDAQ
Definition: L1TGT.h:87
static const int MaxLsNrDiffTcsFdlEvm
Definition: L1TGT.h:169
edm::EDGetTokenT< L1GlobalTriggerEvmReadoutRecord > gtEvmSource_
input tag for L1 GT EVM readout record
Definition: L1TGT.h:111
MonitorElement * orbit_lumi
Definition: L1TGT.h:139
std::string m_histFolder
histogram folder for L1 GT plots
Definition: L1TGT.h:187
MonitorElement * algo_bits_lumi
Definition: L1TGT.h:130
virtual void beginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &)
Definition: L1TGT.cc:92
MonitorElement * m_monLsNrDiffTcsFdlEvm
Definition: L1TGT.h:160
MonitorElement * gpsfreq
Definition: L1TGT.h:152
MonitorElement * algo_bits
Definition: L1TGT.h:125
MonitorElement * event_type
Definition: L1TGT.h:132
MonitorElement * m_monOrbitNrDiffTcsFdlEvmLs
Definition: L1TGT.h:171
MonitorElement * dbx_module
Definition: L1TGT.h:143
bool m_runInEndLumi
Definition: L1TGT.h:115
unsigned long long uint64_t
Definition: Time.h:15
virtual void endLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &)
end section
Definition: L1TGT.cc:451
MonitorElement * tt_bits_corr
Definition: L1TGT.h:128
virtual void endRun(const edm::Run &, const edm::EventSetup &)
Definition: L1TGT.cc:459
bool isActive(int word, int bit)
Definition: L1TGT.cc:747
MonitorElement * gpsfreqlum
Definition: L1TGT.h:154
int m_nrEvJob
number of events processed
Definition: L1TGT.h:183
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > gtSource_L1GT_
input parameters
Definition: L1TGT.h:107
void countPfsIndicesPerLs()
Definition: L1TGT.cc:754
MonitorElement * m_monL1PfIndicesPerLs
Definition: L1TGT.h:157
virtual void beginJob()
Definition: L1TGT.cc:55
MonitorElement * trigger_number
Definition: L1TGT.h:136
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
Definition: L1TGT.cc:64
MonitorElement * BST_beamMomentum
Definition: L1TGT.h:149
MonitorElement * BST_lhcFillNumber
Definition: L1TGT.h:147
MonitorElement * setupversion_lumi
Definition: L1TGT.h:140
virtual void analyze(const edm::Event &, const edm::EventSetup &)
Definition: L1TGT.cc:101
MonitorElement * BST_turnCountNumber
Definition: L1TGT.h:146
boost::uint64_t preOrb_
Definition: L1TGT.h:190
MonitorElement * event_lumi
Definition: L1TGT.h:135
MonitorElement * tt_bits_lumi
Definition: L1TGT.h:131
MonitorElement * trigger_lumi
Definition: L1TGT.h:137
MonitorElement * evnum_trignum_lumi
Definition: L1TGT.h:138
MonitorElement * algo_tt_bits_corr
Definition: L1TGT.h:129
bool m_runInEndJob
Definition: L1TGT.h:117
Definition: Run.h:41
MonitorElement * m_monOrbitNrDiffTcsFdlEvm
Definition: L1TGT.h:159
L1TGT(const edm::ParameterSet &ps)
Definition: L1TGT.cc:18
virtual ~L1TGT()
Definition: L1TGT.cc:50
edm::EDGetTokenT< L1MuGMTReadoutCollection > gtSource_L1MuGMT_
Definition: L1TGT.h:108