CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
l1t::GlobalBoard Class Reference

#include <GlobalBoard.h>

Public Member Functions

void fillAlgRecord (int iBxInEvent, std::unique_ptr< GlobalAlgBlkBxCollection > &uGtAlgRecord, int prescaleSet, int menuUUID, int firmwareUUID)
 Fill the Daq Records. More...
 
const std::bitset< GlobalAlgBlk::maxPhysicsTriggers > & getAlgorithmOR () const
 return algorithm OR decision More...
 
const BXVector< const l1t::L1Candidate * > * getCandL1EG () const
 pointer to EG data list More...
 
const BXVector< const l1t::EtSum * > * getCandL1EtSum () const
 pointer to Tau data list More...
 
const BXVector< const GlobalExtBlk * > * getCandL1External () const
 pointer to Tau data list More...
 
const BXVector< const l1t::L1Candidate * > * getCandL1Jet () const
 pointer to Jet data list More...
 
const BXVector< const l1t::Muon * > * getCandL1Mu () const
 return global muon trigger candidate More...
 
const BXVector< const l1t::L1Candidate * > * getCandL1Tau () const
 pointer to Tau data list More...
 
const std::bitset< GlobalAlgBlk::maxPhysicsTriggers > & getDecisionWord () const
 return decision More...
 
 GlobalBoard ()
 
void init (const int numberPhysTriggers, const int nrL1Mu, const int nrL1EG, const int nrL1Tau, const int nrL1Jet, int bxFirst, int bxLast)
 initialize the class (mainly reserve) More...
 
void printGmtData (const int iBxInEvent) const
 print received Muon dataWord More...
 
void receiveCaloObjectData (edm::Event &, const edm::EDGetTokenT< BXVector< l1t::EGamma >> &, const edm::EDGetTokenT< BXVector< l1t::Tau >> &, const edm::EDGetTokenT< BXVector< l1t::Jet >> &, const edm::EDGetTokenT< BXVector< l1t::EtSum >> &, const bool receiveEG, const int nrL1EG, const bool receiveTau, const int nrL1Tau, const bool receiveJet, const int nrL1Jet, const bool receiveEtSums)
 receive data from Global Muon Trigger More...
 
void receiveExternalData (edm::Event &, const edm::EDGetTokenT< BXVector< GlobalExtBlk >> &, const bool receiveExt)
 
void receiveMuonObjectData (edm::Event &, const edm::EDGetTokenT< BXVector< l1t::Muon >> &, const bool receiveMu, const int nrL1Mu)
 
void reset ()
 clear uGT More...
 
void resetCalo ()
 
void resetExternal ()
 
void resetMu ()
 
void runFDL (edm::Event &iEvent, const int iBxInEvent, const int totalBxInEvent, const unsigned int numberPhysTriggers, const std::vector< double > &prescaleFactorsAlgoTrig, const std::vector< unsigned int > &triggerMaskAlgoTrig, const std::vector< int > &triggerMaskVetoAlgoTrig, const bool algorithmTriggersUnprescaled, const bool algorithmTriggersUnmasked)
 run the uGT FDL (Apply Prescales and Veto) More...
 
void runGTL (edm::Event &iEvent, const edm::EventSetup &evSetup, const TriggerMenu *m_l1GtMenu, const bool produceL1GtObjectMapRecord, const int iBxInEvent, std::unique_ptr< GlobalObjectMapRecord > &gtObjectMapRecord, const unsigned int numberPhysTriggers, const int nrL1Mu, const int nrL1EG, const int nrL1Tau, const int nrL1Jet)
 run the uGT GTL (Conditions and Algorithms) More...
 
void setBxFirst (int bx)
 
void setBxLast (int bx)
 
void setVerbosity (const int verbosity)
 
virtual ~GlobalBoard ()
 

Private Attributes

bool m_algFinalOr
 
bool m_algFinalOrVeto
 
bool m_algInitialOr
 
bool m_algIntermOr
 
bool m_algPrescaledOr
 
unsigned int m_boardEventCount
 
int m_bxFirst_
 
int m_bxLast_
 
BXVector< const l1t::L1Candidate * > * m_candL1EG
 
BXVector< const l1t::EtSum * > * m_candL1EtSum
 
BXVector< const GlobalExtBlk * > * m_candL1External
 
BXVector< const l1t::L1Candidate * > * m_candL1Jet
 
BXVector< const l1t::Muon * > * m_candL1Mu
 
BXVector< const l1t::L1Candidate * > * m_candL1Tau
 
std::vector< AlgorithmEvaluation::ConditionEvaluationMapm_conditionResultMaps
 
uint m_currentLumi
 
bool m_firstEv
 
bool m_firstEvLumiSegment
 
std::bitset< GlobalAlgBlk::maxPhysicsTriggersm_gtlAlgorithmOR
 
std::bitset< GlobalAlgBlk::maxPhysicsTriggersm_gtlDecisionWord
 
bool m_isDebugEnabled
 
const L1CaloGeometrym_l1CaloGeometry
 
unsigned long long m_l1CaloGeometryCacheID
 
const TriggerMenum_l1GtMenu
 
unsigned long long m_l1GtMenuCacheID
 
const L1MuTriggerScalesm_l1MuTriggerScales
 
unsigned long long m_l1MuTriggerScalesCacheID
 
std::vector< std::vector< double > > m_prescaleCounterAlgoTrig
 prescale counters: NumberPhysTriggers counters per bunch cross in event More...
 
GlobalAlgBlk m_uGtAlgBlk
 
int m_uGtBoardNumber
 
bool m_uGtFinalBoard
 
int m_verbosity
 verbosity level More...
 

Detailed Description

Definition at line 52 of file GlobalBoard.h.

Constructor & Destructor Documentation

◆ GlobalBoard()

GlobalBoard::GlobalBoard ( )

Definition at line 60 of file GlobalBoard.cc.

67  m_firstEv(true),
69  m_currentLumi(0),
72 
73  m_gtlAlgorithmOR.reset();
74  m_gtlDecisionWord.reset();
75 
76  // initialize cached IDs
77  m_l1GtMenuCacheID = 0ULL;
80 
81  // Counter for number of events board sees
83 
84  // Need to expand use with more than one uGt GlobalBoard for now assume 1
85  m_uGtBoardNumber = 0;
86  m_uGtFinalBoard = true;
87 }

References m_boardEventCount, m_gtlAlgorithmOR, m_gtlDecisionWord, m_l1CaloGeometryCacheID, m_l1GtMenuCacheID, m_l1MuTriggerScalesCacheID, m_uGtAlgBlk, m_uGtBoardNumber, m_uGtFinalBoard, and GlobalAlgBlk::reset().

◆ ~GlobalBoard()

GlobalBoard::~GlobalBoard ( )
virtual

Definition at line 90 of file GlobalBoard.cc.

90  {
91  //reset(); //why would we need a reset?
92  delete m_candL1Mu;
93  delete m_candL1EG;
94  delete m_candL1Tau;
95  delete m_candL1Jet;
96  delete m_candL1EtSum;
97  delete m_candL1External;
98 
99  // delete m_gtEtaPhiConversions;
100 }

Member Function Documentation

◆ fillAlgRecord()

void GlobalBoard::fillAlgRecord ( int  iBxInEvent,
std::unique_ptr< GlobalAlgBlkBxCollection > &  uGtAlgRecord,
int  prescaleSet,
int  menuUUID,
int  firmwareUUID 
)

Fill the Daq Records.

Definition at line 962 of file GlobalBoard.cc.

966  {
967  if (m_verbosity) {
968  LogDebug("L1TGlobal") << "\n**** GlobalBoard fill DAQ Records for bx= " << iBxInEvent << std::endl;
969  }
970 
971  // Set header information
972  m_uGtAlgBlk.setbxInEventNr((iBxInEvent & 0xF));
973  m_uGtAlgBlk.setPreScColumn(prescaleSet);
974  m_uGtAlgBlk.setL1MenuUUID(menuUUID);
975  m_uGtAlgBlk.setL1FirmwareUUID(firmwareUUID);
976 
980 
981  uGtAlgRecord->push_back(iBxInEvent, m_uGtAlgBlk);
982 }

References LogDebug.

◆ getAlgorithmOR()

const std::bitset<GlobalAlgBlk::maxPhysicsTriggers>& l1t::GlobalBoard::getAlgorithmOR ( ) const
inline

return algorithm OR decision

Definition at line 135 of file GlobalBoard.h.

135 { return m_gtlAlgorithmOR; }

References m_gtlAlgorithmOR.

◆ getCandL1EG()

const BXVector<const l1t::L1Candidate*>* l1t::GlobalBoard::getCandL1EG ( ) const
inline

pointer to EG data list

Definition at line 141 of file GlobalBoard.h.

141 { return m_candL1EG; }

References m_candL1EG.

◆ getCandL1EtSum()

const BXVector<const l1t::EtSum*>* l1t::GlobalBoard::getCandL1EtSum ( ) const
inline

pointer to Tau data list

Definition at line 150 of file GlobalBoard.h.

150 { return m_candL1EtSum; }

References m_candL1EtSum.

◆ getCandL1External()

const BXVector<const GlobalExtBlk*>* l1t::GlobalBoard::getCandL1External ( ) const
inline

pointer to Tau data list

Definition at line 153 of file GlobalBoard.h.

153 { return m_candL1External; }

References m_candL1External.

◆ getCandL1Jet()

const BXVector<const l1t::L1Candidate*>* l1t::GlobalBoard::getCandL1Jet ( ) const
inline

pointer to Jet data list

Definition at line 144 of file GlobalBoard.h.

144 { return m_candL1Jet; }

References m_candL1Jet.

◆ getCandL1Mu()

const BXVector<const l1t::Muon*>* l1t::GlobalBoard::getCandL1Mu ( ) const
inline

return global muon trigger candidate

Definition at line 138 of file GlobalBoard.h.

138 { return m_candL1Mu; }

References m_candL1Mu.

◆ getCandL1Tau()

const BXVector<const l1t::L1Candidate*>* l1t::GlobalBoard::getCandL1Tau ( ) const
inline

pointer to Tau data list

Definition at line 147 of file GlobalBoard.h.

147 { return m_candL1Tau; }

References m_candL1Tau.

◆ getDecisionWord()

const std::bitset<GlobalAlgBlk::maxPhysicsTriggers>& l1t::GlobalBoard::getDecisionWord ( ) const
inline

return decision

Definition at line 132 of file GlobalBoard.h.

132 { return m_gtlDecisionWord; }

References m_gtlDecisionWord.

◆ init()

void GlobalBoard::init ( const int  numberPhysTriggers,
const int  nrL1Mu,
const int  nrL1EG,
const int  nrL1Tau,
const int  nrL1Jet,
int  bxFirst,
int  bxLast 
)

initialize the class (mainly reserve)

Definition at line 107 of file GlobalBoard.cc.

113  {
115  setBxLast(bxLast);
116 
123 
124  m_uGtAlgBlk.reset();
125 
126  LogDebug("L1TGlobal") << "\t Initializing Board with bxFirst = " << m_bxFirst_ << ", bxLast = " << m_bxLast_
127  << std::endl;
128 }

References simCaloStage2Layer1Digis_cfi::bxFirst, simCaloStage2Layer1Digis_cfi::bxLast, and LogDebug.

◆ printGmtData()

void GlobalBoard::printGmtData ( const int  iBxInEvent) const

print received Muon dataWord

Definition at line 1021 of file GlobalBoard.cc.

1021  {
1022  LogTrace("L1TGlobal") << "\nl1t::L1GlobalTrigger: uGMT data received for BxInEvent = " << iBxInEvent << std::endl;
1023 
1024  int nrL1Mu = m_candL1Mu->size(iBxInEvent);
1025  LogTrace("L1TGlobal") << "Number of GMT muons = " << nrL1Mu << "\n" << std::endl;
1026 
1027  LogTrace("L1TGlobal") << std::endl;
1028 }

References LogTrace.

◆ receiveCaloObjectData()

void GlobalBoard::receiveCaloObjectData ( edm::Event iEvent,
const edm::EDGetTokenT< BXVector< l1t::EGamma >> &  egInputToken,
const edm::EDGetTokenT< BXVector< l1t::Tau >> &  tauInputToken,
const edm::EDGetTokenT< BXVector< l1t::Jet >> &  jetInputToken,
const edm::EDGetTokenT< BXVector< l1t::EtSum >> &  sumInputToken,
const bool  receiveEG,
const int  nrL1EG,
const bool  receiveTau,
const int  nrL1Tau,
const bool  receiveJet,
const int  nrL1Jet,
const bool  receiveEtSums 
)

receive data from Global Muon Trigger

Definition at line 131 of file GlobalBoard.cc.

142  {
143  if (m_verbosity) {
144  LogDebug("L1TGlobal") << "\n**** Board receiving Calo Data "
145  //<< "\n from input tag " << caloInputTag << "\n"
146  << std::endl;
147  }
148 
149  resetCalo();
150 
151  // get data from Calorimeter
152  if (receiveEG) {
154  iEvent.getByToken(egInputToken, egData);
155 
156  if (!egData.isValid()) {
157  if (m_verbosity) {
158  edm::LogWarning("L1TGlobal") << "\nWarning: BXVector<l1t::EGamma> with input tag "
159  //<< caloInputTag
160  << "\nrequested in configuration, but not found in the event.\n"
161  << std::endl;
162  }
163  } else {
164  // bx in EG data
165  for (int i = egData->getFirstBX(); i <= egData->getLastBX(); ++i) {
166  // Prevent from pushing back bx that is outside of allowed range
167  if (i < m_bxFirst_ || i > m_bxLast_)
168  continue;
169 
170  //Loop over EG in this bx
171  int nObj = 0;
172  for (std::vector<l1t::EGamma>::const_iterator eg = egData->begin(i); eg != egData->end(i); ++eg) {
173  if (nObj < nrL1EG) {
174  (*m_candL1EG).push_back(i, &(*eg));
175  } else {
176  edm::LogWarning("L1TGlobal") << " Too many EG (" << nObj << ") for uGT Configuration maxEG =" << nrL1EG
177  << std::endl;
178  }
179  LogDebug("L1TGlobal") << "EG Pt " << eg->hwPt() << " Eta " << eg->hwEta() << " Phi " << eg->hwPhi()
180  << " Qual " << eg->hwQual() << " Iso " << eg->hwIso() << std::endl;
181 
182  nObj++;
183  } //end loop over EG in bx
184  } //end loop over bx
185 
186  } //end if over valid EG data
187 
188  } //end if ReveiveEG data
189 
190  if (receiveTau) {
192  iEvent.getByToken(tauInputToken, tauData);
193 
194  if (!tauData.isValid()) {
195  if (m_verbosity) {
196  edm::LogWarning("L1TGlobal") << "\nWarning: BXVector<l1t::Tau> with input tag "
197  //<< caloInputTag
198  << "\nrequested in configuration, but not found in the event.\n"
199  << std::endl;
200  }
201  } else {
202  // bx in tau data
203  for (int i = tauData->getFirstBX(); i <= tauData->getLastBX(); ++i) {
204  // Prevent from pushing back bx that is outside of allowed range
205  if (i < m_bxFirst_ || i > m_bxLast_)
206  continue;
207 
208  //Loop over tau in this bx
209  int nObj = 0;
210  for (std::vector<l1t::Tau>::const_iterator tau = tauData->begin(i); tau != tauData->end(i); ++tau) {
211  if (nObj < nrL1Tau) {
212  (*m_candL1Tau).push_back(i, &(*tau));
213  } else {
214  LogTrace("L1TGlobal") << " Too many Tau (" << nObj << ") for uGT Configuration maxTau =" << nrL1Tau
215  << std::endl;
216  }
217 
218  LogDebug("L1TGlobal") << "tau Pt " << tau->hwPt() << " Eta " << tau->hwEta() << " Phi " << tau->hwPhi()
219  << " Qual " << tau->hwQual() << " Iso " << tau->hwIso() << std::endl;
220  nObj++;
221 
222  } //end loop over tau in bx
223  } //end loop over bx
224 
225  } //end if over valid tau data
226 
227  } //end if ReveiveTau data
228 
229  if (receiveJet) {
231  iEvent.getByToken(jetInputToken, jetData);
232 
233  if (!jetData.isValid()) {
234  if (m_verbosity) {
235  edm::LogWarning("L1TGlobal") << "\nWarning: BXVector<l1t::Jet> with input tag "
236  //<< caloInputTag
237  << "\nrequested in configuration, but not found in the event.\n"
238  << std::endl;
239  }
240  } else {
241  // bx in jet data
242  for (int i = jetData->getFirstBX(); i <= jetData->getLastBX(); ++i) {
243  // Prevent from pushing back bx that is outside of allowed range
244  if (i < m_bxFirst_ || i > m_bxLast_)
245  continue;
246 
247  //Loop over jet in this bx
248  int nObj = 0;
249  for (std::vector<l1t::Jet>::const_iterator jet = jetData->begin(i); jet != jetData->end(i); ++jet) {
250  if (nObj < nrL1Jet) {
251  (*m_candL1Jet).push_back(i, &(*jet));
252  } else {
253  edm::LogWarning("L1TGlobal") << " Too many Jets (" << nObj << ") for uGT Configuration maxJet =" << nrL1Jet
254  << std::endl;
255  }
256 
257  LogDebug("L1TGlobal") << "Jet Pt " << jet->hwPt() << " Eta " << jet->hwEta() << " Phi " << jet->hwPhi()
258  << " Qual " << jet->hwQual() << " Iso " << jet->hwIso() << std::endl;
259  nObj++;
260  } //end loop over jet in bx
261  } //end loop over bx
262 
263  } //end if over valid jet data
264 
265  } //end if ReveiveJet data
266 
267  if (receiveEtSums) {
269  iEvent.getByToken(sumInputToken, etSumData);
270 
271  if (!etSumData.isValid()) {
272  if (m_verbosity) {
273  edm::LogWarning("L1TGlobal") << "\nWarning: BXVector<l1t::EtSum> with input tag "
274  //<< caloInputTag
275  << "\nrequested in configuration, but not found in the event.\n"
276  << std::endl;
277  }
278  } else {
279  for (int i = etSumData->getFirstBX(); i <= etSumData->getLastBX(); ++i) {
280  // Prevent from pushing back bx that is outside of allowed range
281  if (i < m_bxFirst_ || i > m_bxLast_)
282  continue;
283 
284  //Loop over jet in this bx
285  for (std::vector<l1t::EtSum>::const_iterator etsum = etSumData->begin(i); etsum != etSumData->end(i); ++etsum) {
286  (*m_candL1EtSum).push_back(i, &(*etsum));
287 
288  /* In case we need to split these out
289  switch ( etsum->getType() ) {
290  case l1t::EtSum::EtSumType::kMissingEt:
291  {
292  //(*m_candETM).push_back(i,&(*etsum));
293  LogDebug("L1TGlobal") << "ETM: Pt " << etsum->hwPt() << " Phi " << etsum->hwPhi() << std::endl;
294  }
295  break;
296  case l1t::EtSum::EtSumType::kMissingHt:
297  {
298  //(*m_candHTM).push_back(i,&(*etsum));
299  LogDebug("L1TGlobal") << "HTM: Pt " << etsum->hwPt() << " Phi " << etsum->hwPhi() << std::endl;
300  }
301  break;
302  case l1t::EtSum::EtSumType::kTotalEt:
303  {
304  //(*m_candETT).push_back(i,&(*etsum));
305  LogDebug("L1TGlobal") << "ETT: Pt " << etsum->hwPt() << std::endl;
306  }
307  break;
308  case l1t::EtSum::EtSumType::kTotalHt:
309  {
310  //(*m_candHTT).push_back(i,&(*etsum));
311  LogDebug("L1TGlobal") << "HTT: Pt " << etsum->hwPt() << std::endl;
312  }
313  break;
314  case l1t::EtSum::EtSumType::kTowerCount:
315  {
316  //(*m_candTowerCount).push_back(i,&(*etsum));
317  LogDebug("L1TGlobal") << "TowerCount: " << etsum->hwPt() << std::endl;
318  }
319  break;
320  default:
321  LogDebug("L1TGlobal") << "Default encounted " << std::endl;
322  break;
323  }
324 */
325 
326  } //end loop over jet in bx
327  } //end loop over Bx
328  }
329  }
330 }

References mps_fire::i, iEvent, edm::HandleBase::isValid(), metsig::jet, LogDebug, LogTrace, and metsig::tau.

◆ receiveExternalData()

void GlobalBoard::receiveExternalData ( edm::Event iEvent,
const edm::EDGetTokenT< BXVector< GlobalExtBlk >> &  extInputToken,
const bool  receiveExt 
)

Definition at line 387 of file GlobalBoard.cc.

389  {
390  if (m_verbosity) {
391  LogDebug("L1TGlobal") << "\n**** GlobalBoard receiving external data = "
392  //<< "\n from input tag " << muInputTag << "\n"
393  << std::endl;
394  }
395 
396  resetExternal();
397 
398  // get data from Global Muon Trigger
399  if (receiveExt) {
401  iEvent.getByToken(extInputToken, extData);
402 
403  if (!extData.isValid()) {
404  if (m_verbosity) {
405  edm::LogWarning("L1TGlobal") << "\nWarning: BXVector<GlobalExtBlk> with input tag "
406  //<< muInputTag
407  << "\nrequested in configuration, but not found in the event.\n"
408  << std::endl;
409  }
410  } else {
411  // bx in muon data
412  for (int i = extData->getFirstBX(); i <= extData->getLastBX(); ++i) {
413  // Prevent from pushing back bx that is outside of allowed range
414  if (i < m_bxFirst_ || i > m_bxLast_)
415  continue;
416 
417  //Loop over ext in this bx
418  for (std::vector<GlobalExtBlk>::const_iterator ext = extData->begin(i); ext != extData->end(i); ++ext) {
419  (*m_candL1External).push_back(i, &(*ext));
420  } //end loop over ext in bx
421  } //end loop over bx
422 
423  } //end if over valid ext data
424 
425  } //end if ReveiveExt data
426 }

References mps_fire::i, iEvent, edm::HandleBase::isValid(), and LogDebug.

◆ receiveMuonObjectData()

void GlobalBoard::receiveMuonObjectData ( edm::Event iEvent,
const edm::EDGetTokenT< BXVector< l1t::Muon >> &  muInputToken,
const bool  receiveMu,
const int  nrL1Mu 
)

Definition at line 333 of file GlobalBoard.cc.

336  {
337  if (m_verbosity) {
338  LogDebug("L1TGlobal") << "\n**** GlobalBoard receiving muon data = "
339  //<< "\n from input tag " << muInputTag << "\n"
340  << std::endl;
341  }
342 
343  resetMu();
344 
345  // get data from Global Muon Trigger
346  if (receiveMu) {
348  iEvent.getByToken(muInputToken, muonData);
349 
350  if (!muonData.isValid()) {
351  if (m_verbosity) {
352  edm::LogWarning("L1TGlobal") << "\nWarning: BXVector<l1t::Muon> with input tag "
353  //<< muInputTag
354  << "\nrequested in configuration, but not found in the event.\n"
355  << std::endl;
356  }
357  } else {
358  // bx in muon data
359  for (int i = muonData->getFirstBX(); i <= muonData->getLastBX(); ++i) {
360  // Prevent from pushing back bx that is outside of allowed range
361  if (i < m_bxFirst_ || i > m_bxLast_)
362  continue;
363 
364  //Loop over Muons in this bx
365  int nObj = 0;
366  for (std::vector<l1t::Muon>::const_iterator mu = muonData->begin(i); mu != muonData->end(i); ++mu) {
367  if (nObj < nrL1Mu) {
368  (*m_candL1Mu).push_back(i, &(*mu));
369  } else {
370  edm::LogWarning("L1TGlobal") << " Too many Muons (" << nObj << ") for uGT Configuration maxMu =" << nrL1Mu
371  << std::endl;
372  }
373 
374  LogDebug("L1TGlobal") << "Muon Pt " << mu->hwPt() << " EtaAtVtx " << mu->hwEtaAtVtx() << " PhiAtVtx "
375  << mu->hwPhiAtVtx() << " Qual " << mu->hwQual() << " Iso " << mu->hwIso()
376  << std::endl;
377  nObj++;
378  } //end loop over muons in bx
379  } //end loop over bx
380 
381  } //end if over valid muon data
382 
383  } //end if ReveiveMuon data
384 }

References mps_fire::i, iEvent, edm::HandleBase::isValid(), LogDebug, and amptDefaultParameters_cff::mu.

◆ reset()

void GlobalBoard::reset ( void  )

clear uGT

Definition at line 985 of file GlobalBoard.cc.

985  {
986  resetMu();
987  resetCalo();
988  resetExternal();
989 
990  m_uGtAlgBlk.reset();
991 
992  m_gtlDecisionWord.reset();
993  m_gtlAlgorithmOR.reset();
994 }

◆ resetCalo()

void GlobalBoard::resetCalo ( )

Definition at line 1003 of file GlobalBoard.cc.

◆ resetExternal()

void GlobalBoard::resetExternal ( )

Definition at line 1015 of file GlobalBoard.cc.

1015  {
1018 }

◆ resetMu()

void GlobalBoard::resetMu ( )

Definition at line 997 of file GlobalBoard.cc.

997  {
998  m_candL1Mu->clear();
1000 }

◆ runFDL()

void GlobalBoard::runFDL ( edm::Event iEvent,
const int  iBxInEvent,
const int  totalBxInEvent,
const unsigned int  numberPhysTriggers,
const std::vector< double > &  prescaleFactorsAlgoTrig,
const std::vector< unsigned int > &  triggerMaskAlgoTrig,
const std::vector< int > &  triggerMaskVetoAlgoTrig,
const bool  algorithmTriggersUnprescaled,
const bool  algorithmTriggersUnmasked 
)

run the uGT FDL (Apply Prescales and Veto)

if we are masking.

Definition at line 830 of file GlobalBoard.cc.

838  {
839  if (m_verbosity) {
840  LogDebug("L1TGlobal") << "\n**** GlobalBoard apply Final Decision Logic " << std::endl;
841  }
842 
843  // prescale counters are reset at the beginning of the luminosity segment
844  if (m_firstEv) {
845  // prescale counters: numberPhysTriggers counters per bunch cross
846  m_prescaleCounterAlgoTrig.reserve(numberPhysTriggers * totalBxInEvent);
847 
848  for (int iBxInEvent = 0; iBxInEvent <= totalBxInEvent; ++iBxInEvent) {
849  m_prescaleCounterAlgoTrig.push_back(prescaleFactorsAlgoTrig);
850  }
851  m_firstEv = false;
852  m_currentLumi = iEvent.luminosityBlock();
853  }
854 
855  // update and clear prescales at the beginning of the luminosity segment
856  if (m_firstEvLumiSegment || m_currentLumi != iEvent.luminosityBlock()) {
858  for (int iBxInEvent = 0; iBxInEvent <= totalBxInEvent; ++iBxInEvent) {
859  m_prescaleCounterAlgoTrig.push_back(prescaleFactorsAlgoTrig);
860  }
861 
862  m_firstEvLumiSegment = false;
863  m_currentLumi = iEvent.luminosityBlock();
864  }
865 
866  // Copy Algorithm bits to Prescaled word
867  // Prescaling and Masking done below if requested.
869 
870  // -------------------------------------------
871  // Apply Prescales or skip if turned off
872  // -------------------------------------------
873  if (!algorithmTriggersUnprescaled) {
874  // iBxInEvent is ... -2 -1 0 1 2 ... while counters are 0 1 2 3 4 ...
875  int inBxInEvent = totalBxInEvent / 2 + iBxInEvent;
876 
877  bool temp_algPrescaledOr = false;
878  bool alreadyReported = false;
879  for (unsigned int iBit = 0; iBit < numberPhysTriggers; ++iBit) {
880  bool bitValue = m_uGtAlgBlk.getAlgoDecisionInitial(iBit);
881  if (bitValue) {
882  // Make sure algo bit in range, warn otherwise
883  if (iBit < prescaleFactorsAlgoTrig.size()) {
884  if (prescaleFactorsAlgoTrig.at(iBit) != 1) {
885  (m_prescaleCounterAlgoTrig.at(inBxInEvent).at(iBit))--;
886  if (m_prescaleCounterAlgoTrig.at(inBxInEvent).at(iBit) == 0) {
887  // bit already true in algoDecisionWord, just reset counter
888  m_prescaleCounterAlgoTrig.at(inBxInEvent).at(iBit) = prescaleFactorsAlgoTrig.at(iBit);
889  temp_algPrescaledOr = true;
890  } else {
891  // change bit to false in prescaled word and final decision word
892  m_uGtAlgBlk.setAlgoDecisionInterm(iBit, false);
893 
894  } //if Prescale counter reached zero
895  } //if prescale factor is not 1 (ie. no prescale)
896  else {
897  temp_algPrescaledOr = true;
898  }
899  } // require bit in range
900  else if (!alreadyReported) {
901  alreadyReported = true;
902  edm::LogWarning("L1TGlobal") << "\nWarning: algoBit >= prescaleFactorsAlgoTrig.size() in bx " << iBxInEvent
903  << std::endl;
904  }
905  } //if algo bit is set true
906  } //loop over alg bits
907 
908  m_algPrescaledOr = temp_algPrescaledOr; //temp
909 
910  } else {
911  // Since not Prescaling just take OR of Initial Work
913 
914  } //if we are going to apply prescales.
915 
916  // Copy Algorithm bits fron Prescaled word to Final Word
917  // Masking done below if requested.
919 
920  if (!algorithmTriggersUnmasked) {
921  bool temp_algFinalOr = false;
922  bool alreadyReported = false;
923  for (unsigned int iBit = 0; iBit < numberPhysTriggers; ++iBit) {
924  bool bitValue = m_uGtAlgBlk.getAlgoDecisionInterm(iBit);
925 
926  if (bitValue) {
927  //bool isMasked = ( triggerMaskAlgoTrig.at(iBit) == 0 );
928  bool isMasked = false;
929  if (iBit < triggerMaskAlgoTrig.size())
930  isMasked = (triggerMaskAlgoTrig.at(iBit) == 0);
931  else if (!alreadyReported) {
932  alreadyReported = true;
933  edm::LogWarning("L1TGlobal") << "\nWarning: algoBit >= triggerMaskAlgoTrig.size() in bx " << iBxInEvent
934  << std::endl;
935  }
936 
937  bool passMask = (bitValue && !isMasked);
938 
939  if (passMask)
940  temp_algFinalOr = true;
941  else
942  m_uGtAlgBlk.setAlgoDecisionFinal(iBit, false);
943 
944  // Check if veto mask is true, if it is, set the event veto flag.
945  if (triggerMaskVetoAlgoTrig.at(iBit) == 1)
946  m_algFinalOrVeto = true;
947  }
948  }
949 
950  m_algIntermOr = temp_algFinalOr;
951 
952  } else {
954 
955  }
956 
957  // Set FinalOR for this board
959 }

References iEvent, and LogDebug.

◆ runGTL()

void GlobalBoard::runGTL ( edm::Event iEvent,
const edm::EventSetup evSetup,
const TriggerMenu m_l1GtMenu,
const bool  produceL1GtObjectMapRecord,
const int  iBxInEvent,
std::unique_ptr< GlobalObjectMapRecord > &  gtObjectMapRecord,
const unsigned int  numberPhysTriggers,
const int  nrL1Mu,
const int  nrL1EG,
const int  nrL1Tau,
const int  nrL1Jet 
)

run the uGT GTL (Conditions and Algorithms)

DMP Start debugging here

Definition at line 429 of file GlobalBoard.cc.

439  {
440  const std::vector<ConditionMap>& conditionMap = m_l1GtMenu->gtConditionMap();
441  const AlgorithmMap& algorithmMap = m_l1GtMenu->gtAlgorithmMap();
442  const GlobalScales& gtScales = m_l1GtMenu->gtScales();
443  const std::string scaleSetName = gtScales.getScalesName();
444  LogDebug("L1TGlobal") << " L1 Menu Scales -- Set Name: " << scaleSetName << std::endl;
445 
446  // Reset AlgBlk for this bx
447  m_uGtAlgBlk.reset();
448  m_algInitialOr = false;
449  m_algPrescaledOr = false;
450  m_algIntermOr = false;
451  m_algFinalOr = false;
452  m_algFinalOrVeto = false;
453 
454  const std::vector<std::vector<MuonTemplate>>& corrMuon = m_l1GtMenu->corMuonTemplate();
455 
456  // Comment out for now
457  const std::vector<std::vector<CaloTemplate>>& corrCalo = m_l1GtMenu->corCaloTemplate();
458 
459  const std::vector<std::vector<EnergySumTemplate>>& corrEnergySum = m_l1GtMenu->corEnergySumTemplate();
460 
461  LogDebug("L1TGlobal") << "Size corrMuon " << corrMuon.size() << "\nSize corrCalo " << corrCalo.size()
462  << "\nSize corrSums " << corrEnergySum.size() << std::endl;
463 
464  // loop over condition maps (one map per condition chip)
465  // then loop over conditions in the map
466  // save the results in temporary maps
467 
468  // never happens in production but at first event...
469  if (m_conditionResultMaps.size() != conditionMap.size()) {
470  m_conditionResultMaps.clear();
471  m_conditionResultMaps.resize(conditionMap.size());
472  }
473 
474  int iChip = -1;
475 
476  for (std::vector<ConditionMap>::const_iterator itCondOnChip = conditionMap.begin();
477  itCondOnChip != conditionMap.end();
478  itCondOnChip++) {
479  iChip++;
480 
482 
483  for (CItCond itCond = itCondOnChip->begin(); itCond != itCondOnChip->end(); itCond++) {
484  // evaluate condition
485  switch ((itCond->second)->condCategory()) {
486  case CondMuon: {
487  // BLW Not sure what to do with this for now
488  const int ifMuEtaNumberBits = 0;
489 
490  MuCondition* muCondition = new MuCondition(itCond->second, this, nrL1Mu, ifMuEtaNumberBits);
491 
492  muCondition->setVerbosity(m_verbosity);
493 
494  muCondition->evaluateConditionStoreResult(iBxInEvent);
495 
496  // BLW COmment out for now
497  cMapResults[itCond->first] = muCondition;
498 
499  if (m_verbosity && m_isDebugEnabled) {
500  std::ostringstream myCout;
501  muCondition->print(myCout);
502 
503  LogTrace("L1TGlobal") << myCout.str() << std::endl;
504  }
505  //delete muCondition;
506 
507  } break;
508  case CondCalo: {
509  // BLW Not sure w hat to do with this for now
510  const int ifCaloEtaNumberBits = 0;
511 
512  CaloCondition* caloCondition =
513  new CaloCondition(itCond->second, this, nrL1EG, nrL1Jet, nrL1Tau, ifCaloEtaNumberBits);
514 
515  caloCondition->setVerbosity(m_verbosity);
516 
517  caloCondition->evaluateConditionStoreResult(iBxInEvent);
518 
519  cMapResults[itCond->first] = caloCondition;
520 
521  if (m_verbosity && m_isDebugEnabled) {
522  std::ostringstream myCout;
523  caloCondition->print(myCout);
524 
525  LogTrace("L1TGlobal") << myCout.str() << std::endl;
526  }
527  // delete caloCondition;
528 
529  } break;
530  case CondEnergySum: {
531  EnergySumCondition* eSumCondition = new EnergySumCondition(itCond->second, this);
532 
533  eSumCondition->setVerbosity(m_verbosity);
534  eSumCondition->evaluateConditionStoreResult(iBxInEvent);
535 
536  cMapResults[itCond->first] = eSumCondition;
537 
538  if (m_verbosity && m_isDebugEnabled) {
539  std::ostringstream myCout;
540  eSumCondition->print(myCout);
541 
542  LogTrace("L1TGlobal") << myCout.str() << std::endl;
543  }
544  // delete eSumCondition;
545 
546  } break;
547 
548  case CondExternal: {
549  ExternalCondition* extCondition = new ExternalCondition(itCond->second, this);
550 
551  extCondition->setVerbosity(m_verbosity);
552  extCondition->evaluateConditionStoreResult(iBxInEvent);
553 
554  cMapResults[itCond->first] = extCondition;
555 
556  if (m_verbosity && m_isDebugEnabled) {
557  std::ostringstream myCout;
558  extCondition->print(myCout);
559 
560  LogTrace("L1TGlobal") << myCout.str() << std::endl;
561  }
562  // delete extCondition;
563 
564  } break;
565  case CondCorrelation: {
566  // get first the sub-conditions
567  const CorrelationTemplate* corrTemplate = static_cast<const CorrelationTemplate*>(itCond->second);
568  const GtConditionCategory cond0Categ = corrTemplate->cond0Category();
569  const GtConditionCategory cond1Categ = corrTemplate->cond1Category();
570  const int cond0Ind = corrTemplate->cond0Index();
571  const int cond1Ind = corrTemplate->cond1Index();
572 
573  const GlobalCondition* cond0Condition = nullptr;
574  const GlobalCondition* cond1Condition = nullptr;
575 
576  // maximum number of objects received for evaluation of l1t::Type1s condition
577  int cond0NrL1Objects = 0;
578  int cond1NrL1Objects = 0;
579  LogDebug("L1TGlobal") << " cond0NrL1Objects" << cond0NrL1Objects << " cond1NrL1Objects " << cond1NrL1Objects
580  << std::endl;
581 
582  switch (cond0Categ) {
583  case CondMuon: {
584  cond0Condition = &((corrMuon[iChip])[cond0Ind]);
585  } break;
586  case CondCalo: {
587  cond0Condition = &((corrCalo[iChip])[cond0Ind]);
588  } break;
589  case CondEnergySum: {
590  cond0Condition = &((corrEnergySum[iChip])[cond0Ind]);
591  } break;
592  default: {
593  // do nothing, should not arrive here
594  } break;
595  }
596 
597  switch (cond1Categ) {
598  case CondMuon: {
599  cond1Condition = &((corrMuon[iChip])[cond1Ind]);
600  } break;
601  case CondCalo: {
602  cond1Condition = &((corrCalo[iChip])[cond1Ind]);
603  } break;
604  case CondEnergySum: {
605  cond1Condition = &((corrEnergySum[iChip])[cond1Ind]);
606  } break;
607  default: {
608  // do nothing, should not arrive here
609  } break;
610  }
611 
612  CorrCondition* correlationCond = new CorrCondition(itCond->second, cond0Condition, cond1Condition, this);
613 
614  correlationCond->setVerbosity(m_verbosity);
615  correlationCond->setScales(&gtScales);
616  correlationCond->evaluateConditionStoreResult(iBxInEvent);
617 
618  cMapResults[itCond->first] = correlationCond;
619 
620  if (m_verbosity && m_isDebugEnabled) {
621  std::ostringstream myCout;
622  correlationCond->print(myCout);
623 
624  LogTrace("L1TGlobal") << myCout.str() << std::endl;
625  }
626 
627  // delete correlationCond;
628 
629  } break;
631  // get first the sub-conditions
632  const CorrelationWithOverlapRemovalTemplate* corrTemplate =
633  static_cast<const CorrelationWithOverlapRemovalTemplate*>(itCond->second);
634  const GtConditionCategory cond0Categ = corrTemplate->cond0Category();
635  const GtConditionCategory cond1Categ = corrTemplate->cond1Category();
636  const GtConditionCategory cond2Categ = corrTemplate->cond2Category();
637  const int cond0Ind = corrTemplate->cond0Index();
638  const int cond1Ind = corrTemplate->cond1Index();
639  const int cond2Ind = corrTemplate->cond2Index();
640 
641  const GlobalCondition* cond0Condition = nullptr;
642  const GlobalCondition* cond1Condition = nullptr;
643  const GlobalCondition* cond2Condition = nullptr;
644 
645  // maximum number of objects received for evaluation of l1t::Type1s condition
646  int cond0NrL1Objects = 0;
647  int cond1NrL1Objects = 0;
648  int cond2NrL1Objects = 0;
649  LogDebug("L1TGlobal") << " cond0NrL1Objects" << cond0NrL1Objects << " cond1NrL1Objects " << cond1NrL1Objects
650  << " cond2NrL1Objects " << cond2NrL1Objects << std::endl;
651 
652  switch (cond0Categ) {
653  case CondMuon: {
654  cond0Condition = &((corrMuon[iChip])[cond0Ind]);
655  } break;
656  case CondCalo: {
657  cond0Condition = &((corrCalo[iChip])[cond0Ind]);
658  } break;
659  case CondEnergySum: {
660  cond0Condition = &((corrEnergySum[iChip])[cond0Ind]);
661  } break;
662  default: {
663  // do nothing, should not arrive here
664  } break;
665  }
666 
667  switch (cond1Categ) {
668  case CondMuon: {
669  cond1Condition = &((corrMuon[iChip])[cond1Ind]);
670  } break;
671  case CondCalo: {
672  cond1Condition = &((corrCalo[iChip])[cond1Ind]);
673  } break;
674  case CondEnergySum: {
675  cond1Condition = &((corrEnergySum[iChip])[cond1Ind]);
676  } break;
677  default: {
678  // do nothing, should not arrive here
679  } break;
680  }
681 
682  switch (cond2Categ) {
683  case CondMuon: {
684  cond2Condition = &((corrMuon[iChip])[cond2Ind]);
685  } break;
686  case CondCalo: {
687  cond2Condition = &((corrCalo[iChip])[cond2Ind]);
688  } break;
689  case CondEnergySum: {
690  cond2Condition = &((corrEnergySum[iChip])[cond2Ind]);
691  } break;
692  default: {
693  // do nothing, should not arrive here
694  } break;
695  }
696 
697  CorrWithOverlapRemovalCondition* correlationCondWOR =
698  new CorrWithOverlapRemovalCondition(itCond->second, cond0Condition, cond1Condition, cond2Condition, this);
699 
700  correlationCondWOR->setVerbosity(m_verbosity);
701  correlationCondWOR->setScales(&gtScales);
702  correlationCondWOR->evaluateConditionStoreResult(iBxInEvent);
703 
704  cMapResults[itCond->first] = correlationCondWOR;
705 
706  if (m_verbosity && m_isDebugEnabled) {
707  std::ostringstream myCout;
708  correlationCondWOR->print(myCout);
709 
710  LogTrace("L1TGlobal") << myCout.str() << std::endl;
711  }
712 
713  // delete correlationCondWOR;
714 
715  } break;
716  case CondNull: {
717  // do nothing
718 
719  } break;
720  default: {
721  // do nothing
722 
723  } break;
724  }
725  }
726  }
727 
728  // loop over algorithm map
730  // empty vector for object maps - filled during loop
731  std::vector<GlobalObjectMap> objMapVec;
732  if (produceL1GtObjectMapRecord && (iBxInEvent == 0))
733  objMapVec.reserve(numberPhysTriggers);
734 
735  for (CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
736  AlgorithmEvaluation gtAlg(itAlgo->second);
737  gtAlg.evaluateAlgorithm((itAlgo->second).algoChipNumber(), m_conditionResultMaps);
738 
739  int algBitNumber = (itAlgo->second).algoBitNumber();
740  bool algResult = gtAlg.gtAlgoResult();
741 
742  LogDebug("L1TGlobal") << " ===> for iBxInEvent = " << iBxInEvent << ":\t algBitName = " << itAlgo->first
743  << ",\t algBitNumber = " << algBitNumber << ",\t algResult = " << algResult << std::endl;
744 
745  if (algResult) {
746  // m_gtlAlgorithmOR.set(algBitNumber);
747  m_uGtAlgBlk.setAlgoDecisionInitial(algBitNumber, algResult);
748  m_algInitialOr = true;
749  }
750 
751  if (m_verbosity && m_isDebugEnabled) {
752  std::ostringstream myCout;
753  (itAlgo->second).print(myCout);
754  gtAlg.print(myCout);
755 
756  LogTrace("L1TGlobal") << myCout.str() << std::endl;
757  }
758 
759  // object maps only for BxInEvent = 0
760  if (produceL1GtObjectMapRecord && (iBxInEvent == 0)) {
761  std::vector<L1TObjectTypeInCond> otypes;
762  for (auto iop = gtAlg.operandTokenVector().begin(); iop != gtAlg.operandTokenVector().end(); ++iop) {
763  //cout << "INFO: operand name: " << iop->tokenName << "\n";
764  int myChip = -1;
765  int found = 0;
767  for (auto imap = conditionMap.begin(); imap != conditionMap.end(); imap++) {
768  myChip++;
769  auto match = imap->find(iop->tokenName);
770 
771  if (match != imap->end()) {
772  found = 1;
773  //cout << "DEBUG: found match for " << iop->tokenName << " at " << match->first << "\n";
774 
775  otype = match->second->objectType();
776 
777  for (auto itype = otype.begin(); itype != otype.end(); itype++) {
778  //cout << "type: " << *itype << "\n";
779  }
780  }
781  }
782  if (!found) {
783  edm::LogWarning("L1TGlobal") << "\n Failed to find match for operand token " << iop->tokenName << "\n";
784  } else {
785  otypes.push_back(otype);
786  }
787  }
788 
789  // set object map
790  GlobalObjectMap objMap;
791 
792  objMap.setAlgoName(itAlgo->first);
793  objMap.setAlgoBitNumber(algBitNumber);
794  objMap.setAlgoGtlResult(algResult);
795  objMap.swapOperandTokenVector(gtAlg.operandTokenVector());
796  objMap.swapCombinationVector(gtAlg.gtAlgoCombinationVector());
797  // gtAlg is empty now...
798  objMap.swapObjectTypeVector(otypes);
799 
800  if (m_verbosity && m_isDebugEnabled) {
801  std::ostringstream myCout1;
802  objMap.print(myCout1);
803 
804  LogTrace("L1TGlobal") << myCout1.str() << std::endl;
805  }
806 
807  objMapVec.push_back(objMap);
808  }
809  }
810 
811  // object maps only for BxInEvent = 0
812  if (produceL1GtObjectMapRecord && (iBxInEvent == 0)) {
813  gtObjectMapRecord->swapGtObjectMap(objMapVec);
814  }
815 
816  // loop over condition maps (one map per condition chip)
817  // then loop over conditions in the map
818  // delete the conditions created with new, zero pointer, do not clear map, keep the vector as is...
819  for (std::vector<AlgorithmEvaluation::ConditionEvaluationMap>::iterator itCondOnChip = m_conditionResultMaps.begin();
820  itCondOnChip != m_conditionResultMaps.end();
821  itCondOnChip++) {
822  for (AlgorithmEvaluation::ItEvalMap itCond = itCondOnChip->begin(); itCond != itCondOnChip->end(); itCond++) {
823  delete itCond->second;
824  itCond->second = nullptr;
825  }
826  }
827 }

References CorrelationTemplate::cond0Category(), CorrelationWithOverlapRemovalTemplate::cond0Category(), CorrelationTemplate::cond0Index(), CorrelationWithOverlapRemovalTemplate::cond0Index(), CorrelationTemplate::cond1Category(), CorrelationWithOverlapRemovalTemplate::cond1Category(), CorrelationTemplate::cond1Index(), CorrelationWithOverlapRemovalTemplate::cond1Index(), CorrelationWithOverlapRemovalTemplate::cond2Category(), CorrelationWithOverlapRemovalTemplate::cond2Index(), l1t::CondCalo, l1t::CondCorrelation, l1t::CondCorrelationWithOverlapRemoval, l1t::CondEnergySum, l1t::CondExternal, l1t::CondMuon, l1t::CondNull, TriggerMenu::corCaloTemplate(), TriggerMenu::corEnergySumTemplate(), TriggerMenu::corMuonTemplate(), l1t::AlgorithmEvaluation::evaluateAlgorithm(), l1t::ConditionEvaluation::evaluateConditionStoreResult(), newFWLiteAna::found, l1t::GlobalScales::getScalesName(), l1t::AlgorithmEvaluation::gtAlgoCombinationVector(), l1t::AlgorithmEvaluation::gtAlgoResult(), TriggerMenu::gtAlgorithmMap(), TriggerMenu::gtConditionMap(), TriggerMenu::gtScales(), LogDebug, LogTrace, match(), l1t::AlgorithmEvaluation::operandTokenVector(), CalibrationSummaryClient_cfi::otype, print(), l1t::EnergySumCondition::print(), l1t::MuCondition::print(), l1t::ExternalCondition::print(), l1t::CorrCondition::print(), l1t::CaloCondition::print(), l1t::CorrWithOverlapRemovalCondition::print(), GlobalObjectMap::print(), l1t::AlgorithmEvaluation::print(), GlobalObjectMap::setAlgoBitNumber(), GlobalObjectMap::setAlgoGtlResult(), GlobalObjectMap::setAlgoName(), l1t::CorrCondition::setScales(), l1t::CorrWithOverlapRemovalCondition::setScales(), l1t::ConditionEvaluation::setVerbosity(), AlCaHLTBitMon_QueryRunRegistry::string, GlobalObjectMap::swapCombinationVector(), GlobalObjectMap::swapObjectTypeVector(), and GlobalObjectMap::swapOperandTokenVector().

◆ setBxFirst()

void GlobalBoard::setBxFirst ( int  bx)

Definition at line 103 of file GlobalBoard.cc.

103 { m_bxFirst_ = bx; }

References l1GtPatternGenerator_cfi::bx.

◆ setBxLast()

void GlobalBoard::setBxLast ( int  bx)

Definition at line 105 of file GlobalBoard.cc.

105 { m_bxLast_ = bx; }

References l1GtPatternGenerator_cfi::bx.

◆ setVerbosity()

void l1t::GlobalBoard::setVerbosity ( const int  verbosity)
inline

Definition at line 185 of file GlobalBoard.h.

185 { m_verbosity = verbosity; }

References m_verbosity, and HIPAlignmentAlgorithm_cfi::verbosity.

Member Data Documentation

◆ m_algFinalOr

bool l1t::GlobalBoard::m_algFinalOr
private

Definition at line 244 of file GlobalBoard.h.

◆ m_algFinalOrVeto

bool l1t::GlobalBoard::m_algFinalOrVeto
private

Definition at line 245 of file GlobalBoard.h.

◆ m_algInitialOr

bool l1t::GlobalBoard::m_algInitialOr
private

Definition at line 241 of file GlobalBoard.h.

◆ m_algIntermOr

bool l1t::GlobalBoard::m_algIntermOr
private

Definition at line 242 of file GlobalBoard.h.

◆ m_algPrescaledOr

bool l1t::GlobalBoard::m_algPrescaledOr
private

Definition at line 243 of file GlobalBoard.h.

◆ m_boardEventCount

unsigned int l1t::GlobalBoard::m_boardEventCount
private

Definition at line 248 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_bxFirst_

int l1t::GlobalBoard::m_bxFirst_
private

Definition at line 217 of file GlobalBoard.h.

◆ m_bxLast_

int l1t::GlobalBoard::m_bxLast_
private

Definition at line 218 of file GlobalBoard.h.

◆ m_candL1EG

BXVector<const l1t::L1Candidate*>* l1t::GlobalBoard::m_candL1EG
private

Definition at line 206 of file GlobalBoard.h.

Referenced by getCandL1EG().

◆ m_candL1EtSum

BXVector<const l1t::EtSum*>* l1t::GlobalBoard::m_candL1EtSum
private

Definition at line 209 of file GlobalBoard.h.

Referenced by getCandL1EtSum().

◆ m_candL1External

BXVector<const GlobalExtBlk*>* l1t::GlobalBoard::m_candL1External
private

Definition at line 210 of file GlobalBoard.h.

Referenced by getCandL1External().

◆ m_candL1Jet

BXVector<const l1t::L1Candidate*>* l1t::GlobalBoard::m_candL1Jet
private

Definition at line 208 of file GlobalBoard.h.

Referenced by getCandL1Jet().

◆ m_candL1Mu

BXVector<const l1t::Muon*>* l1t::GlobalBoard::m_candL1Mu
private

Definition at line 205 of file GlobalBoard.h.

Referenced by getCandL1Mu().

◆ m_candL1Tau

BXVector<const l1t::L1Candidate*>* l1t::GlobalBoard::m_candL1Tau
private

Definition at line 207 of file GlobalBoard.h.

Referenced by getCandL1Tau().

◆ m_conditionResultMaps

std::vector<AlgorithmEvaluation::ConditionEvaluationMap> l1t::GlobalBoard::m_conditionResultMaps
private

Definition at line 226 of file GlobalBoard.h.

◆ m_currentLumi

uint l1t::GlobalBoard::m_currentLumi
private

Definition at line 233 of file GlobalBoard.h.

◆ m_firstEv

bool l1t::GlobalBoard::m_firstEv
private

Definition at line 231 of file GlobalBoard.h.

◆ m_firstEvLumiSegment

bool l1t::GlobalBoard::m_firstEvLumiSegment
private

Definition at line 232 of file GlobalBoard.h.

◆ m_gtlAlgorithmOR

std::bitset<GlobalAlgBlk::maxPhysicsTriggers> l1t::GlobalBoard::m_gtlAlgorithmOR
private

Definition at line 220 of file GlobalBoard.h.

Referenced by getAlgorithmOR(), and GlobalBoard().

◆ m_gtlDecisionWord

std::bitset<GlobalAlgBlk::maxPhysicsTriggers> l1t::GlobalBoard::m_gtlDecisionWord
private

Definition at line 221 of file GlobalBoard.h.

Referenced by getDecisionWord(), and GlobalBoard().

◆ m_isDebugEnabled

bool l1t::GlobalBoard::m_isDebugEnabled
private

Definition at line 238 of file GlobalBoard.h.

◆ m_l1CaloGeometry

const L1CaloGeometry* l1t::GlobalBoard::m_l1CaloGeometry
private

Definition at line 195 of file GlobalBoard.h.

◆ m_l1CaloGeometryCacheID

unsigned long long l1t::GlobalBoard::m_l1CaloGeometryCacheID
private

Definition at line 196 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_l1GtMenu

const TriggerMenu* l1t::GlobalBoard::m_l1GtMenu
private

Definition at line 191 of file GlobalBoard.h.

◆ m_l1GtMenuCacheID

unsigned long long l1t::GlobalBoard::m_l1GtMenuCacheID
private

Definition at line 192 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_l1MuTriggerScales

const L1MuTriggerScales* l1t::GlobalBoard::m_l1MuTriggerScales
private

Definition at line 198 of file GlobalBoard.h.

◆ m_l1MuTriggerScalesCacheID

unsigned long long l1t::GlobalBoard::m_l1MuTriggerScalesCacheID
private

Definition at line 199 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_prescaleCounterAlgoTrig

std::vector<std::vector<double> > l1t::GlobalBoard::m_prescaleCounterAlgoTrig
private

prescale counters: NumberPhysTriggers counters per bunch cross in event

Definition at line 229 of file GlobalBoard.h.

◆ m_uGtAlgBlk

GlobalAlgBlk l1t::GlobalBoard::m_uGtAlgBlk
private

Definition at line 223 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_uGtBoardNumber

int l1t::GlobalBoard::m_uGtBoardNumber
private

Definition at line 251 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_uGtFinalBoard

bool l1t::GlobalBoard::m_uGtFinalBoard
private

Definition at line 252 of file GlobalBoard.h.

Referenced by GlobalBoard().

◆ m_verbosity

int l1t::GlobalBoard::m_verbosity
private

verbosity level

Definition at line 237 of file GlobalBoard.h.

Referenced by setVerbosity().

l1t::AlgorithmEvaluation::ConditionEvaluationMap
__gnu_cxx ::hash_map< std::string, ConditionEvaluation * > ConditionEvaluationMap
copy constructor
Definition: AlgorithmEvaluation.h:87
HIPAlignmentAlgorithm_cfi.verbosity
verbosity
Definition: HIPAlignmentAlgorithm_cfi.py:7
l1t::GlobalBoard::m_algInitialOr
bool m_algInitialOr
Definition: GlobalBoard.h:241
ext
Definition: memstream.h:15
TriggerMenu::gtScales
const l1t::GlobalScales & gtScales() const
get the scales
Definition: TriggerMenu.h:172
l1t::AlgorithmEvaluation::ItEvalMap
ConditionEvaluationMap::iterator ItEvalMap
Definition: AlgorithmEvaluation.h:89
CItCond
ConditionMap::const_iterator CItCond
iterators through map containing the conditions
Definition: L1GtTriggerMenuFwd.h:34
mps_fire.i
i
Definition: mps_fire.py:428
l1t::GlobalBoard::m_candL1Tau
BXVector< const l1t::L1Candidate * > * m_candL1Tau
Definition: GlobalBoard.h:207
GlobalAlgBlk::setbxInEventNr
void setbxInEventNr(int bxNr)
Definition: GlobalAlgBlk.h:57
GlobalAlgBlk::setL1MenuUUID
void setL1MenuUUID(int uuid)
set simple members
Definition: GlobalAlgBlk.h:55
GlobalObjectMap
Definition: GlobalObjectMap.h:32
l1t::GlobalBoard::m_currentLumi
uint m_currentLumi
Definition: GlobalBoard.h:233
l1t::GlobalBoard::m_candL1Jet
BXVector< const l1t::L1Candidate * > * m_candL1Jet
Definition: GlobalBoard.h:208
metsig::tau
Definition: SignAlgoResolutions.h:49
l1t::GlobalBoard::m_uGtFinalBoard
bool m_uGtFinalBoard
Definition: GlobalBoard.h:252
amptDefaultParameters_cff.mu
mu
Definition: amptDefaultParameters_cff.py:16
l1t::GlobalBoard::m_algFinalOr
bool m_algFinalOr
Definition: GlobalBoard.h:244
l1t::GlobalBoard::setBxFirst
void setBxFirst(int bx)
Definition: GlobalBoard.cc:103
l1t::GlobalBoard::m_algPrescaledOr
bool m_algPrescaledOr
Definition: GlobalBoard.h:243
TriggerMenu::corCaloTemplate
const std::vector< std::vector< CaloTemplate > > & corCaloTemplate() const
Definition: TriggerMenu.h:149
GlobalAlgBlk::copyInitialToInterm
void copyInitialToInterm()
Copy vectors words.
Definition: GlobalAlgBlk.h:73
l1t::GlobalBoard::m_firstEvLumiSegment
bool m_firstEvLumiSegment
Definition: GlobalBoard.h:232
MuCondition
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
l1t::GlobalBoard::m_verbosity
int m_verbosity
verbosity level
Definition: GlobalBoard.h:237
GlobalAlgBlk::getAlgoDecisionInterm
std::vector< bool > const & getAlgoDecisionInterm() const
Definition: GlobalAlgBlk.h:83
l1t::CondCorrelationWithOverlapRemoval
Definition: GlobalDefinitions.h:99
TriggerMenu::gtAlgorithmMap
const l1t::AlgorithmMap & gtAlgorithmMap() const
get / set the algorithm map (by name)
Definition: TriggerMenu.h:162
GlobalAlgBlk::setFinalORVeto
void setFinalORVeto(bool fOR)
Definition: GlobalAlgBlk.h:58
l1t::GlobalBoard::m_l1GtMenu
const TriggerMenu * m_l1GtMenu
Definition: GlobalBoard.h:191
GlobalObjectMap::swapCombinationVector
void swapCombinationVector(std::vector< CombinationsInCond > &combinationVectorValue)
Definition: GlobalObjectMap.h:64
CorrelationWithOverlapRemovalTemplate::cond0Category
const l1t::GtConditionCategory cond0Category() const
get / set the category of the thre sub-conditions
Definition: CorrelationWithOverlapRemovalTemplate.h:108
newFWLiteAna.found
found
Definition: newFWLiteAna.py:118
edm::Handle
Definition: AssociativeIterator.h:50
jetData
Definition: GctErrorAnalyzerDefinitions.h:19
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
l1t::GlobalBoard::m_isDebugEnabled
bool m_isDebugEnabled
Definition: GlobalBoard.h:238
CorrelationTemplate::cond0Category
const l1t::GtConditionCategory cond0Category() const
get / set the category of the two sub-conditions
Definition: CorrelationTemplate.h:90
BXVector< const l1t::Muon * >
GlobalAlgBlk::setPreScColumn
void setPreScColumn(int psC)
Definition: GlobalAlgBlk.h:61
l1t::CondCalo
Definition: GlobalDefinitions.h:95
l1t::CondNull
Definition: GlobalDefinitions.h:93
CItAlgo
AlgorithmMap::const_iterator CItAlgo
iterators through map containing the algorithms
Definition: L1GtTriggerMenuFwd.h:38
TriggerMenu::corMuonTemplate
const std::vector< std::vector< MuonTemplate > > & corMuonTemplate() const
Definition: TriggerMenu.h:144
GlobalAlgBlk::setAlgoDecisionInterm
void setAlgoDecisionInterm(unsigned int bit, bool val)
Definition: GlobalAlgBlk.cc:84
CorrelationTemplate::cond1Index
const int cond1Index() const
Definition: CorrelationTemplate.h:100
CorrelationWithOverlapRemovalTemplate::cond0Index
const int cond0Index() const
get / set the index of the two sub-conditions in the cor* vector from menu
Definition: CorrelationWithOverlapRemovalTemplate.h:119
CorrelationWithOverlapRemovalTemplate::cond1Category
const l1t::GtConditionCategory cond1Category() const
Definition: CorrelationWithOverlapRemovalTemplate.h:110
AlgorithmMap
std::map< std::string, L1GtAlgorithm > AlgorithmMap
map containing the algorithms
Definition: L1GtTriggerMenuFwd.h:31
GlobalScales
GlobalObjectMap::setAlgoBitNumber
void setAlgoBitNumber(int algoBitNumberValue)
Definition: GlobalObjectMap.h:49
CaloCondition
GlobalAlgBlk::setFinalOR
void setFinalOR(bool fOR)
Definition: GlobalAlgBlk.h:60
l1t::GlobalBoard::m_algIntermOr
bool m_algIntermOr
Definition: GlobalBoard.h:242
BXVector::clear
void clear()
GlobalAlgBlk::setAlgoDecisionFinal
void setAlgoDecisionFinal(unsigned int bit, bool val)
Definition: GlobalAlgBlk.cc:94
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
GlobalObjectMap::setAlgoGtlResult
void setAlgoGtlResult(bool algoGtlResultValue)
Definition: GlobalObjectMap.h:55
l1t::GlobalBoard::m_conditionResultMaps
std::vector< AlgorithmEvaluation::ConditionEvaluationMap > m_conditionResultMaps
Definition: GlobalBoard.h:226
ExternalCondition
CorrelationTemplate::cond0Index
const int cond0Index() const
get / set the index of the two sub-conditions in the cor* vector from menu
Definition: CorrelationTemplate.h:98
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:223
GlobalAlgBlk::setAlgoDecisionInitial
void setAlgoDecisionInitial(unsigned int bit, bool val)
Set decision bits.
Definition: GlobalAlgBlk.cc:73
print
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:46
EnergySumCondition
match
std::pair< typename Association::data_type::first_type, double > match(Reference key, Association association, bool bestMatchByMaxValue)
Generic matching function.
Definition: Utils.h:10
GlobalAlgBlk::setL1FirmwareUUID
void setL1FirmwareUUID(int fuuid)
Definition: GlobalAlgBlk.h:56
l1t::GlobalBoard::m_candL1Mu
BXVector< const l1t::Muon * > * m_candL1Mu
Definition: GlobalBoard.h:205
iEvent
int iEvent
Definition: GenABIO.cc:224
l1t::GlobalBoard::m_l1MuTriggerScalesCacheID
unsigned long long m_l1MuTriggerScalesCacheID
Definition: GlobalBoard.h:199
TriggerMenu::corEnergySumTemplate
const std::vector< std::vector< EnergySumTemplate > > & corEnergySumTemplate() const
Definition: TriggerMenu.h:155
l1t::GlobalBoard::m_uGtBoardNumber
int m_uGtBoardNumber
Definition: GlobalBoard.h:251
GlobalObjectMap::swapObjectTypeVector
void swapObjectTypeVector(std::vector< L1TObjectTypeInCond > &objectTypeVectorValue)
Definition: GlobalObjectMap.h:85
l1t::GlobalBoard::m_gtlAlgorithmOR
std::bitset< GlobalAlgBlk::maxPhysicsTriggers > m_gtlAlgorithmOR
Definition: GlobalBoard.h:220
CorrWithOverlapRemovalCondition
CorrelationTemplate
Definition: CorrelationTemplate.h:34
l1t::CondEnergySum
Definition: GlobalDefinitions.h:96
GlobalAlgBlk::getAlgoDecisionInitial
std::vector< bool > const & getAlgoDecisionInitial() const
Get decision bits.
Definition: GlobalAlgBlk.h:82
l1t::GlobalBoard::m_candL1EtSum
BXVector< const l1t::EtSum * > * m_candL1EtSum
Definition: GlobalBoard.h:209
l1t::GlobalBoard::m_candL1EG
BXVector< const l1t::L1Candidate * > * m_candL1EG
Definition: GlobalBoard.h:206
GlobalAlgBlk::setFinalORPreVeto
void setFinalORPreVeto(bool fOR)
Definition: GlobalAlgBlk.h:59
l1t::GlobalBoard::resetCalo
void resetCalo()
Definition: GlobalBoard.cc:1003
TriggerMenu::gtConditionMap
const std::vector< l1t::ConditionMap > & gtConditionMap() const
get / set / build the condition maps
Definition: TriggerMenu.h:74
simCaloStage2Layer1Digis_cfi.bxFirst
bxFirst
Definition: simCaloStage2Layer1Digis_cfi.py:7
l1t::GlobalBoard::resetExternal
void resetExternal()
Definition: GlobalBoard.cc:1015
l1t::GlobalBoard::m_l1CaloGeometryCacheID
unsigned long long m_l1CaloGeometryCacheID
Definition: GlobalBoard.h:196
l1t::GlobalBoard::m_firstEv
bool m_firstEv
Definition: GlobalBoard.h:231
CalibrationSummaryClient_cfi.otype
otype
Definition: CalibrationSummaryClient_cfi.py:38
CorrCondition
simCaloStage2Layer1Digis_cfi.bxLast
bxLast
Definition: simCaloStage2Layer1Digis_cfi.py:8
metsig::jet
Definition: SignAlgoResolutions.h:47
l1t::CondCorrelation
Definition: GlobalDefinitions.h:97
l1t::GlobalBoard::m_gtlDecisionWord
std::bitset< GlobalAlgBlk::maxPhysicsTriggers > m_gtlDecisionWord
Definition: GlobalBoard.h:221
l1t::GlobalBoard::m_bxFirst_
int m_bxFirst_
Definition: GlobalBoard.h:217
CorrelationWithOverlapRemovalTemplate::cond2Category
const l1t::GtConditionCategory cond2Category() const
Definition: CorrelationWithOverlapRemovalTemplate.h:112
GlobalObjectMap::print
void print(std::ostream &myCout) const
print the full object map
Definition: GlobalObjectMap.cc:98
l1t::GlobalBoard::m_prescaleCounterAlgoTrig
std::vector< std::vector< double > > m_prescaleCounterAlgoTrig
prescale counters: NumberPhysTriggers counters per bunch cross in event
Definition: GlobalBoard.h:229
l1t::CondExternal
Definition: GlobalDefinitions.h:98
GlobalObjectMap::swapOperandTokenVector
void swapOperandTokenVector(std::vector< GlobalLogicParser::OperandToken > &operandTokenVectorValue)
Definition: GlobalObjectMap.h:75
l1t::CondMuon
Definition: GlobalDefinitions.h:94
l1t::GlobalBoard::m_l1GtMenuCacheID
unsigned long long m_l1GtMenuCacheID
Definition: GlobalBoard.h:192
BXVector::size
unsigned size(int bx) const
edm::isDebugEnabled
bool isDebugEnabled()
Definition: MessageLogger.cc:12
CorrelationWithOverlapRemovalTemplate::cond2Index
const int cond2Index() const
Definition: CorrelationWithOverlapRemovalTemplate.h:123
l1t::GtConditionCategory
GtConditionCategory
condition categories
Definition: GlobalDefinitions.h:92
CorrelationWithOverlapRemovalTemplate::cond1Index
const int cond1Index() const
Definition: CorrelationWithOverlapRemovalTemplate.h:121
l1t::GlobalBoard::setBxLast
void setBxLast(int bx)
Definition: GlobalBoard.cc:105
l1t::GlobalBoard::m_uGtAlgBlk
GlobalAlgBlk m_uGtAlgBlk
Definition: GlobalBoard.h:223
l1t::GlobalBoard::m_bxLast_
int m_bxLast_
Definition: GlobalBoard.h:218
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:224
AlgorithmEvaluation
GlobalCondition
Definition: GlobalCondition.h:33
l1t::GlobalBoard::m_candL1External
BXVector< const GlobalExtBlk * > * m_candL1External
Definition: GlobalBoard.h:210
CorrelationWithOverlapRemovalTemplate
Definition: CorrelationWithOverlapRemovalTemplate.h:34
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
BXVector::setBXRange
void setBXRange(int bxFirst, int bxLast)
l1t::GlobalBoard::m_algFinalOrVeto
bool m_algFinalOrVeto
Definition: GlobalBoard.h:245
l1t::GlobalBoard::resetMu
void resetMu()
Definition: GlobalBoard.cc:997
l1t::GlobalBoard::m_boardEventCount
unsigned int m_boardEventCount
Definition: GlobalBoard.h:248
GlobalAlgBlk::reset
void reset()
reset the content of a GlobalAlgBlk
Definition: GlobalAlgBlk.cc:124
GlobalAlgBlk::copyIntermToFinal
void copyIntermToFinal()
Definition: GlobalAlgBlk.h:74
L1TObjectTypeInCond
std::vector< l1t::GlobalObject > L1TObjectTypeInCond
Definition: GlobalObjectMapFwd.h:34
GlobalObjectMap::setAlgoName
void setAlgoName(const std::string &algoNameValue)
Definition: GlobalObjectMap.h:44
CorrelationTemplate::cond1Category
const l1t::GtConditionCategory cond1Category() const
Definition: CorrelationTemplate.h:92