CMS 3D CMS Logo

L1GlobalTriggerPSB.h
Go to the documentation of this file.
1 #ifndef GlobalTrigger_L1GlobalTriggerPSB_h
2 #define GlobalTrigger_L1GlobalTriggerPSB_h
3 
21 // system include files
22 #include <vector>
23 
24 // user include files
28 
30 
33 
38 #include <cstdint>
39 
40 // forward declarations
41 class L1GctCand;
42 
43 class L1GctEmCand;
44 class L1GctJetCand;
45 
46 class L1GctEtMiss;
47 class L1GctEtTotal;
48 class L1GctEtHad;
49 class L1GctHtMiss;
50 
51 class L1GctJetCounts;
52 class L1GctHFBitCounts;
53 class L1GctHFRingEtSums;
54 
56 
57 // class declaration
59 public:
60  // constructor
62  const std::vector<edm::InputTag> &vecTag,
64 
65  // destructor
66  virtual ~L1GlobalTriggerPSB();
67 
68 public:
70  void init(const int nrL1NoIsoEG,
71  const int nrL1IsoEG,
72  const int nrL1CenJet,
73  const int nrL1ForJet,
74  const int nrL1TauJet,
75  const int numberTechnicalTriggers);
76 
79  const edm::InputTag &caloGctInputTag,
80  const int iBxInEvent,
81  const bool receiveNoIsoEG,
82  const int nrL1NoIsoEG,
83  const bool receiveIsoEG,
84  const int nrL1IsoEG,
85  const bool receiveCenJet,
86  const int nrL1CenJet,
87  const bool receiveForJet,
88  const int nrL1ForJet,
89  const bool receiveTauJet,
90  const int nrL1TauJet,
91  const bool receiveETM,
92  const bool receiveETT,
93  const bool receiveHTT,
94  const bool receiveHTM,
95  const bool receiveJetCounts,
96  const bool receiveHfBitCounts,
97  const bool receiveHfRingEtSums);
98 
100  void receiveCastorData(edm::Event &iEvent,
101  const edm::InputTag &castorInputTag,
102  const int iBxInEvent,
103  const bool receiveCastor,
104  const bool readFromPsb);
105 
107  void receiveBptxData(edm::Event &iEvent,
108  const edm::InputTag &bptxInputTag,
109  const int iBxInEvent,
110  const bool receiveBptx,
111  const bool readFromPsb);
112 
114  void receiveExternalData(edm::Event &iEvent,
115  const std::vector<edm::InputTag> &externalInputTags,
116  const int iBxInEvent,
117  const bool receiveExternal,
118  const bool readFromPsb);
119 
122  const std::vector<edm::InputTag> &technicalTriggersInputTags,
123  const int iBxInEvent,
124  const bool receiveTechTr,
125  const int nrL1TechTr);
126 
128  void fillPsbBlock(edm::Event &iEvent,
129  const uint16_t &activeBoardsGtDaq,
130  const int recordLength0,
131  const int recordLength1,
132  const unsigned int altNrBxBoardDaq,
133  const std::vector<L1GtBoard> &boardMaps,
134  const int iBxInEvent,
135  L1GlobalTriggerReadoutRecord *gtDaqReadoutRecord);
136 
138  void reset();
139 
141  void printGctObjectData(const int iBxInEvent) const;
142 
144  inline const std::vector<const L1GctCand *> *getCandL1NoIsoEG() const { return m_candL1NoIsoEG; }
145 
147  inline const std::vector<const L1GctCand *> *getCandL1IsoEG() const { return m_candL1IsoEG; }
148 
150  inline const std::vector<const L1GctCand *> *getCandL1CenJet() const { return m_candL1CenJet; }
151 
153  inline const std::vector<const L1GctCand *> *getCandL1ForJet() const { return m_candL1ForJet; }
154 
156  inline const std::vector<const L1GctCand *> *getCandL1TauJet() const { return m_candL1TauJet; }
157 
159  inline const L1GctEtMiss *getCandL1ETM() const { return m_candETM; }
160 
162  inline const L1GctEtTotal *getCandL1ETT() const { return m_candETT; }
163 
165  inline const L1GctEtHad *getCandL1HTT() const { return m_candHTT; }
166 
168  inline const L1GctHtMiss *getCandL1HTM() const { return m_candHTM; }
169 
171  inline const L1GctJetCounts *getCandL1JetCounts() const { return m_candJetCounts; }
172 
174  inline const L1GctHFBitCounts *getCandL1HfBitCounts() const { return m_candHfBitCounts; }
175 
178 
180  inline const std::vector<bool> *getGtTechnicalTriggers() const { return &m_gtTechnicalTriggers; }
181 
182 public:
183  inline void setVerbosity(const int verbosity) { m_verbosity = verbosity; }
184 
185 private:
186  std::vector<const L1GctCand *> *m_candL1NoIsoEG;
187  std::vector<const L1GctCand *> *m_candL1IsoEG;
188  std::vector<const L1GctCand *> *m_candL1CenJet;
189  std::vector<const L1GctCand *> *m_candL1ForJet;
190  std::vector<const L1GctCand *> *m_candL1TauJet;
191 
196 
198 
201 
203  std::vector<bool> m_gtTechnicalTriggers;
204 
205 private:
209 };
210 
211 #endif
const std::vector< const L1GctCand * > * getCandL1IsoEG() const
pointer to IsoEG data list
const L1GctHtMiss * m_candHTM
const std::vector< const L1GctCand * > * getCandL1ForJet() const
pointer to ForJet data list
const L1GctHFRingEtSums * getCandL1HfRingEtSums() const
pointer to HfRingEtSums data list
Level-1 Trigger jet candidate.
Definition: L1GctJetCand.h:17
const L1GctEtTotal * getCandL1ETT() const
pointer to ETT data list
void receiveGctObjectData(edm::Event &iEvent, const edm::InputTag &caloGctInputTag, const int iBxInEvent, const bool receiveNoIsoEG, const int nrL1NoIsoEG, const bool receiveIsoEG, const int nrL1IsoEG, const bool receiveCenJet, const int nrL1CenJet, const bool receiveForJet, const int nrL1ForJet, const bool receiveTauJet, const int nrL1TauJet, const bool receiveETM, const bool receiveETT, const bool receiveHTT, const bool receiveHTM, const bool receiveJetCounts, const bool receiveHfBitCounts, const bool receiveHfRingEtSums)
receive Global Calorimeter Trigger objects
Persistable copy of missing Et measured at Level-1.
Definition: L1GctEtMiss.h:17
L1GlobalTriggerPSB(const edm::InputTag &caloTag, const std::vector< edm::InputTag > &vecTag, edm::ConsumesCollector &&iC)
std::vector< const L1GctCand * > * m_candL1NoIsoEG
void fillPsbBlock(edm::Event &iEvent, const uint16_t &activeBoardsGtDaq, const int recordLength0, const int recordLength1, const unsigned int altNrBxBoardDaq, const std::vector< L1GtBoard > &boardMaps, const int iBxInEvent, L1GlobalTriggerReadoutRecord *gtDaqReadoutRecord)
fill the content of active PSB boards
Level-1 Trigger EM candidate at output of GCT.
Definition: L1GctEmCand.h:21
const L1GctHFBitCounts * m_candHfBitCounts
const L1GctEtMiss * m_candETM
int iEvent
Definition: GenABIO.cc:224
L1 GCT HF ring Et sums.
void setVerbosity(const int verbosity)
std::vector< const L1GctCand * > * m_candL1ForJet
const std::vector< bool > * getGtTechnicalTriggers() const
pointer to technical trigger bits
const L1GctJetCounts * m_candJetCounts
Persistable copy of total Et measured at Level-1.
Definition: L1GctEtTotal.h:17
void receiveTechnicalTriggers(edm::Event &iEvent, const std::vector< edm::InputTag > &technicalTriggersInputTags, const int iBxInEvent, const bool receiveTechTr, const int nrL1TechTr)
receive technical trigger
std::vector< bool > m_gtTechnicalTriggers
technical trigger bits
void reset()
clear PSB
int m_verbosity
verbosity level
void receiveBptxData(edm::Event &iEvent, const edm::InputTag &bptxInputTag, const int iBxInEvent, const bool receiveBptx, const bool readFromPsb)
receive BPTX objects
const L1GctHFBitCounts * getCandL1HfBitCounts() const
pointer to HfBitCounts data list
Persistable copy of total Ht measured at Level-1.
Definition: L1GctEtHad.h:17
std::vector< const L1GctCand * > * m_candL1CenJet
const L1GctHtMiss * getCandL1HTM() const
pointer to HTM data list
L1 GCT HF ring Et sums.
void printGctObjectData(const int iBxInEvent) const
print Global Calorimeter Trigger data
std::vector< const L1GctCand * > * m_candL1IsoEG
void receiveExternalData(edm::Event &iEvent, const std::vector< edm::InputTag > &externalInputTags, const int iBxInEvent, const bool receiveExternal, const bool readFromPsb)
receive External objects
Persistable copy of missing Et measured at Level-1.
Definition: L1GctHtMiss.h:16
const L1GctHFRingEtSums * m_candHfRingEtSums
const L1GctEtHad * m_candHTT
const L1GctEtMiss * getCandL1ETM() const
pointer to ETM data list
void receiveCastorData(edm::Event &iEvent, const edm::InputTag &castorInputTag, const int iBxInEvent, const bool receiveCastor, const bool readFromPsb)
receive CASTOR objects
std::vector< const L1GctCand * > * m_candL1TauJet
const L1GctEtTotal * m_candETT
const std::vector< const L1GctCand * > * getCandL1TauJet() const
pointer to TauJet data list
ABC for GCT EM and jet candidates.
Definition: L1GctCand.h:12
const std::vector< const L1GctCand * > * getCandL1CenJet() const
pointer to CenJet data list
const L1GctEtHad * getCandL1HTT() const
pointer to HTT data list
const std::vector< const L1GctCand * > * getCandL1NoIsoEG() const
pointer to NoIsoEG data list
void init(const int nrL1NoIsoEG, const int nrL1IsoEG, const int nrL1CenJet, const int nrL1ForJet, const int nrL1TauJet, const int numberTechnicalTriggers)
initialize the class (mainly reserve)
const L1GctJetCounts * getCandL1JetCounts() const
pointer to JetCounts data list