CMS 3D CMS Logo

L1GtDataEmulAnalyzer.h
Go to the documentation of this file.
1 #ifndef GlobalTriggerAnalyzer_L1GtDataEmulAnalyzer_h
2 #define GlobalTriggerAnalyzer_L1GtDataEmulAnalyzer_h
3 
19 // system include files
20 #include <memory>
21 #include <string>
22 
23 // user include files
26 
29 
32 
33 // forward declarations
34 class L1GtfeWord;
35 class L1GtFdlWord;
36 class L1GtPsbWord;
37 class L1TcsWord;
38 class L1GtTriggerMenu;
39 class L1GtTriggerMask;
40 
41 class TH1F;
42 class TH1D;
43 class TH2D;
44 class TTree;
45 
46 // class declaration
47 
49 {
50 
51 public:
52  explicit L1GtDataEmulAnalyzer(const edm::ParameterSet&);
53  ~L1GtDataEmulAnalyzer() override;
54 
55 private:
56 
57  void beginJob() override;
58 
60  virtual void compareGTFE(const edm::Event&, const edm::EventSetup&,
61  const L1GtfeWord&, const L1GtfeWord&);
62 
64  virtual void compareFDL(const edm::Event&, const edm::EventSetup&,
65  const L1GtFdlWord&, const L1GtFdlWord&, const int);
66 
68  virtual void comparePSB(const edm::Event&, const edm::EventSetup&,
69  const L1GtPsbWord&, const L1GtPsbWord&);
70 
72  virtual void compareTCS(const edm::Event&, const edm::EventSetup&,
73  const L1TcsWord&, const L1TcsWord&);
74 
76  virtual void compareDaqRecord(const edm::Event&, const edm::EventSetup&);
77 
79  virtual void compareEvmRecord(const edm::Event&, const edm::EventSetup&);
80 
83  virtual void compareGt_Gct(const edm::Event&, const edm::EventSetup&);
84 
86  void analyze(const edm::Event&, const edm::EventSetup&) override;
87 
89  void bookHistograms();
90 
92  void endJob() override;
93 
94 private:
95 
98 
101 
104 
105 private:
106 
109  std::ostringstream m_myCoutStream;
110 
114 
115  // cached stuff
116 
119  unsigned long long m_l1GtMenuCacheID;
120 
123  unsigned long long m_l1GtTmAlgoCacheID;
124 
126  unsigned long long m_l1GtTmTechCacheID;
127 
128  std::vector<unsigned int> m_triggerMaskAlgoTrig;
129  std::vector<unsigned int> m_triggerMaskTechTrig;
130 
131 private:
132 
134 
137 
138  static const int TotalBxInEvent = 5;
139 
142 
145 
148 
151 
154 
157 
160 
162 
166 
170 
172 
173 
174 };
175 
176 #endif /*GlobalTriggerAnalyzer_L1GtDataEmulAnalyzer_h*/
TH1F * m_gtfeDataEmul
histograms
TH1F * m_fdlEmulTechDecision[TotalBxInEvent][2]
virtual void compareTCS(const edm::Event &, const edm::EventSetup &, const L1TcsWord &, const L1TcsWord &)
compare the TCS board
TH1F * m_fdlDataEmul[TotalBxInEvent][2]
FDL (0 for DAQ, 1 for EVM record)
TH1F * m_fdlEmulAlgoDecision[TotalBxInEvent][2]
std::vector< unsigned int > m_triggerMaskTechTrig
virtual void compareDaqRecord(const edm::Event &, const edm::EventSetup &)
L1 GT DAQ record comparison.
TH1F * m_fdlDataEmulAlgoDecisionMask[TotalBxInEvent][2]
unsigned long long m_l1GtTmTechCacheID
virtual void compareGTFE(const edm::Event &, const edm::EventSetup &, const L1GtfeWord &, const L1GtfeWord &)
compare the GTFE board
void analyze(const edm::Event &, const edm::EventSetup &) override
analyze each event
L1GtDataEmulAnalyzer(const edm::ParameterSet &)
TH1F * m_fdlEmulAlgoDecisionMask[TotalBxInEvent][2]
TH1F * m_fdlDataEmulTechDecisionMask[TotalBxInEvent][2]
edm::InputTag m_l1GtEmulInputTag
input tag for the L1 GT emulator DAQ/EVM record
void bookHistograms()
book all histograms for the module
std::ostringstream m_myCoutStream
TH1F * m_fdlDataAlgoDecisionMask[TotalBxInEvent][2]
TH1F * m_fdlEmulTechDecisionMask[TotalBxInEvent][2]
const L1GtTriggerMenu * m_l1GtMenu
trigger menu
std::vector< unsigned int > m_triggerMaskAlgoTrig
TH1F * m_fdlDataEmulTechDecision[TotalBxInEvent][2]
const L1GtTriggerMask * m_l1GtTmAlgo
trigger masks
TH1F * m_fdlDataAlgoDecision[TotalBxInEvent][2]
void endJob() override
end of job
static const int TotalBxInEvent
TH1F * m_fdlDataEmulAlgoDecision[TotalBxInEvent][2]
virtual void compareGt_Gct(const edm::Event &, const edm::EventSetup &)
edm::InputTag m_l1GtDataInputTag
input tag for the L1 GT hardware DAQ/EVM record
unsigned long long m_l1GtMenuCacheID
TH1F * m_fdlDataTechDecisionMask[TotalBxInEvent][2]
virtual void compareFDL(const edm::Event &, const edm::EventSetup &, const L1GtFdlWord &, const L1GtFdlWord &, const int)
compare the FDL board
virtual void compareEvmRecord(const edm::Event &, const edm::EventSetup &)
L1 GT EVM record comparison.
const L1GtTriggerMask * m_l1GtTmTech
TH1F * m_fdlDataTechDecision[TotalBxInEvent][2]
unsigned long long m_l1GtTmAlgoCacheID
edm::InputTag m_l1GctDataInputTag
input tag for the L1 GCT hardware record
virtual void comparePSB(const edm::Event &, const edm::EventSetup &, const L1GtPsbWord &, const L1GtPsbWord &)
compare the PSB board