CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes | Friends
L1GtTriggerMenuLite Class Reference

#include <L1GtTriggerMenuLite.h>

Public Types

typedef L1TriggerMap::const_iterator CItL1Trig
 iterators through map containing the physics algorithms or the technical triggers More...
 
typedef L1TriggerMap::iterator ItL1Trig
 
typedef std::map< unsigned int, std::string > L1TriggerMap
 map containing the physics algorithms or the technical triggers More...
 

Public Member Functions

const std::string * gtAlgorithmAlias (const unsigned int bitNumber, int &errorCode) const
 get the alias for a physics algorithm with a given bit number More...
 
const L1TriggerMapgtAlgorithmAliasMap () const
 get / set the algorithm map (by alias) More...
 
const L1TriggerMapgtAlgorithmMap () const
 get / set the algorithm map (by name) More...
 
const std::string * gtAlgorithmName (const unsigned int bitNumber, int &errorCode) const
 
const unsigned int gtBitNumber (const std::string &trigName, int &errorCode) const
 
const std::vector< std::vector< int > > & gtPrescaleFactorsAlgoTrig () const
 get the prescale factors by reference / set the prescale factors More...
 
const std::vector< std::vector< int > > & gtPrescaleFactorsTechTrig () const
 
const std::string & gtScaleDbKey () const
 menu associated scale key More...
 
const L1TriggerMapgtTechnicalTriggerMap () const
 get / set the technical trigger map More...
 
const std::string * gtTechTrigName (const unsigned int bitNumber, int &errorCode) const
 
const std::vector< unsigned int > & gtTriggerMaskAlgoTrig () const
 get the trigger mask for physics algorithms More...
 
const std::vector< unsigned int > & gtTriggerMaskTechTrig () const
 get the trigger mask for technical triggers More...
 
const std::string & gtTriggerMenuImplementation () const
 
const std::string & gtTriggerMenuInterface () const
 get / set the trigger menu names More...
 
const std::string & gtTriggerMenuName () const
 
const bool gtTriggerResult (const std::string &trigName, const std::vector< bool > &decWord, int &errorCode) const
 
bool isProductEqual (const L1GtTriggerMenuLite &) const
 merge rule: test on isProductEqual More...
 
 L1GtTriggerMenuLite ()
 constructor More...
 
 L1GtTriggerMenuLite (const std::string &, const L1TriggerMap &, const L1TriggerMap &, const L1TriggerMap &, const std::vector< unsigned int > &, const std::vector< unsigned int > &, const std::vector< std::vector< int > > &, const std::vector< std::vector< int > > &)
 
 L1GtTriggerMenuLite (const L1GtTriggerMenuLite &)
 copy constructor More...
 
bool operator!= (const L1GtTriggerMenuLite &) const
 unequal operator More...
 
L1GtTriggerMenuLiteoperator= (const L1GtTriggerMenuLite &)
 assignment operator More...
 
bool operator== (const L1GtTriggerMenuLite &) const
 equal operator More...
 
void print (std::ostream &, int &) const
 
void setGtAlgorithmAliasMap (const L1TriggerMap &)
 
void setGtAlgorithmMap (const L1TriggerMap &)
 
void setGtPrescaleFactorsAlgoTrig (const std::vector< std::vector< int > > &)
 
void setGtPrescaleFactorsTechTrig (const std::vector< std::vector< int > > &)
 
void setGtScaleDbKey (const std::string &)
 
void setGtTechnicalTriggerMap (const L1TriggerMap &)
 
void setGtTriggerMaskAlgoTrig (const std::vector< unsigned int > &)
 set the trigger mask for physics algorithms More...
 
void setGtTriggerMaskTechTrig (const std::vector< unsigned int > &)
 set the trigger mask for technical triggers More...
 
void setGtTriggerMenuImplementation (const std::string &)
 
void setGtTriggerMenuInterface (const std::string &)
 
void setGtTriggerMenuName (const std::string &)
 
virtual ~L1GtTriggerMenuLite ()
 

Private Attributes

L1TriggerMap m_algorithmAliasMap
 map containing the physics algorithms (by alias) More...
 
L1TriggerMap m_algorithmMap
 map containing the physics algorithms (by name) More...
 
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
 prescale factors More...
 
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
 
std::string m_scaleDbKey
 menu associated scale key More...
 
L1TriggerMap m_technicalTriggerMap
 map containing the technical triggers More...
 
std::vector< unsigned int > m_triggerMaskAlgoTrig
 trigger mask for physics algorithms More...
 
std::vector< unsigned int > m_triggerMaskTechTrig
 trigger mask for technical triggers More...
 
std::string m_triggerMenuImplementation
 
std::string m_triggerMenuInterface
 menu names More...
 
std::string m_triggerMenuName
 

Friends

std::ostream & operator<< (std::ostream &, const L1GtTriggerMenuLite &)
 output stream operator More...
 

Detailed Description

Description: L1 trigger menu and masks, lite version not using event setup.

Implementation: This is the lite version of the L1 trigger menu, with trigger masks included, to be used in the environments not having access to event setup. It offers limited access to the full L1 trigger menu which is implemented as event setup (CondFormats/L1TObjects/interface/L1GtTriggerMenu.h). The masks are provided for the physics partition only.

An EDM product is created and saved in the Run Data, under the assumption that the menu remains the same in a run. The corresponding producer will read the full L1 trigger menu and the trigger masks from event setup, fill the corresponding members and save it as EDM product.

Author
: Vasile Mihai Ghete - HEPHY Vienna

Definition at line 39 of file L1GtTriggerMenuLite.h.

Member Typedef Documentation

◆ CItL1Trig

typedef L1TriggerMap::const_iterator L1GtTriggerMenuLite::CItL1Trig

iterators through map containing the physics algorithms or the technical triggers

Definition at line 45 of file L1GtTriggerMenuLite.h.

◆ ItL1Trig

typedef L1TriggerMap::iterator L1GtTriggerMenuLite::ItL1Trig

Definition at line 46 of file L1GtTriggerMenuLite.h.

◆ L1TriggerMap

typedef std::map<unsigned int, std::string> L1GtTriggerMenuLite::L1TriggerMap

map containing the physics algorithms or the technical triggers

Definition at line 42 of file L1GtTriggerMenuLite.h.

Constructor & Destructor Documentation

◆ L1GtTriggerMenuLite() [1/3]

L1GtTriggerMenuLite::L1GtTriggerMenuLite ( )

constructor

Definition at line 36 of file L1GtTriggerMenuLite.cc.

37  : m_triggerMenuInterface("NULL"),
38  m_triggerMenuName("NULL"),
40  m_scaleDbKey("NULL") {
41  // empty
42 }
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
std::string m_triggerMenuInterface
menu names

◆ L1GtTriggerMenuLite() [2/3]

L1GtTriggerMenuLite::L1GtTriggerMenuLite ( const std::string &  triggerMenuNameVal,
const L1TriggerMap algorithmMapVal,
const L1TriggerMap algorithmAliasMapVal,
const L1TriggerMap technicalTriggerMapVal,
const std::vector< unsigned int > &  triggerMaskAlgoTrigVal,
const std::vector< unsigned int > &  triggerMaskTechTrigVal,
const std::vector< std::vector< int > > &  prescaleFactorsAlgoTrigVal,
const std::vector< std::vector< int > > &  prescaleFactorsTechTrigVal 
)

Definition at line 44 of file L1GtTriggerMenuLite.cc.

52  : m_triggerMenuInterface("NULL"),
53  m_triggerMenuName(triggerMenuNameVal),
55  m_scaleDbKey("NULL"),
56  m_algorithmMap(algorithmMapVal),
57  m_algorithmAliasMap(algorithmAliasMapVal),
58  m_technicalTriggerMap(technicalTriggerMapVal),
59  m_triggerMaskAlgoTrig(triggerMaskAlgoTrigVal),
60  m_triggerMaskTechTrig(triggerMaskTechTrigVal),
61  m_prescaleFactorsAlgoTrig(prescaleFactorsAlgoTrigVal),
62  m_prescaleFactorsTechTrig(prescaleFactorsTechTrigVal)
63 
64 {
65  // empty
66 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
std::string m_triggerMenuInterface
menu names
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ L1GtTriggerMenuLite() [3/3]

L1GtTriggerMenuLite::L1GtTriggerMenuLite ( const L1GtTriggerMenuLite rhs)

copy constructor

Definition at line 69 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, m_prescaleFactorsAlgoTrig, m_prescaleFactorsTechTrig, m_scaleDbKey, m_technicalTriggerMap, m_triggerMaskAlgoTrig, m_triggerMaskTechTrig, m_triggerMenuImplementation, m_triggerMenuInterface, and m_triggerMenuName.

69  {
74 
75  // copy algorithm map
78 
79  // copy technical triggers
80  // (separate map for technical triggers and physics triggers)
82 
83  // copy masks
86 
87  // copy prescale factors
90 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
std::string m_triggerMenuInterface
menu names
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ ~L1GtTriggerMenuLite()

L1GtTriggerMenuLite::~L1GtTriggerMenuLite ( )
virtual

Definition at line 93 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, and m_technicalTriggerMap.

93  {
94  m_algorithmMap.clear();
95  m_algorithmAliasMap.clear();
96  m_technicalTriggerMap.clear();
97 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

Member Function Documentation

◆ gtAlgorithmAlias()

const std::string * L1GtTriggerMenuLite::gtAlgorithmAlias ( const unsigned int  bitNumber,
int &  errorCode 
) const

get the alias for a physics algorithm with a given bit number

Definition at line 312 of file L1GtTriggerMenuLite.cc.

References L1TBPTX_cfi::bitNumber, m_algorithmAliasMap, and AlCaHLTBitMon_QueryRunRegistry::string.

312  {
313  const std::string* gtAlgorithmAlias = nullptr;
314 
315  for (CItL1Trig itTrig = m_algorithmAliasMap.begin(); itTrig != m_algorithmAliasMap.end(); itTrig++) {
316  if (itTrig->first == bitNumber) {
317  gtAlgorithmAlias = &(itTrig->second);
318 
319  errorCode = 0;
320  return gtAlgorithmAlias;
321  }
322  }
323 
324  errorCode = 1;
325  return gtAlgorithmAlias;
326 }
const std::string * gtAlgorithmAlias(const unsigned int bitNumber, int &errorCode) const
get the alias for a physics algorithm with a given bit number
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ gtAlgorithmAliasMap()

const L1TriggerMap& L1GtTriggerMenuLite::gtAlgorithmAliasMap ( ) const
inline

get / set the algorithm map (by alias)

Definition at line 106 of file L1GtTriggerMenuLite.h.

References m_algorithmAliasMap.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

106 { return m_algorithmAliasMap; }
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ gtAlgorithmMap()

const L1TriggerMap& L1GtTriggerMenuLite::gtAlgorithmMap ( ) const
inline

get / set the algorithm map (by name)

Definition at line 101 of file L1GtTriggerMenuLite.h.

References m_algorithmMap.

Referenced by FWL1TriggerTableView::fillTable(), and L1GtUtils::retrieveL1GtTriggerMenuLite().

101 { return m_algorithmMap; }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)

◆ gtAlgorithmName()

const std::string * L1GtTriggerMenuLite::gtAlgorithmName ( const unsigned int  bitNumber,
int &  errorCode 
) const

get the name for a physics algorithm or a technical trigger with a given bit number

Definition at line 330 of file L1GtTriggerMenuLite.cc.

References L1TBPTX_cfi::bitNumber, m_algorithmMap, and AlCaHLTBitMon_QueryRunRegistry::string.

330  {
331  const std::string* gtAlgorithmName = nullptr;
332 
333  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig != m_algorithmMap.end(); itTrig++) {
334  if (itTrig->first == bitNumber) {
335  gtAlgorithmName = &(itTrig->second);
336 
337  errorCode = 0;
338  return gtAlgorithmName;
339  }
340  }
341 
342  errorCode = 1;
343  return gtAlgorithmName;
344 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
const std::string * gtAlgorithmName(const unsigned int bitNumber, int &errorCode) const

◆ gtBitNumber()

const unsigned int L1GtTriggerMenuLite::gtBitNumber ( const std::string &  trigName,
int &  errorCode 
) const

get the bit number for a physics algorithm or a technical trigger with a given name or alias

Definition at line 364 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, m_technicalTriggerMap, and cscTnPEfficiencyTask_cfi::trigName.

364  {
365  unsigned int bitNr = 999;
366 
367  //
368  for (CItL1Trig itTrig = m_algorithmAliasMap.begin(); itTrig != m_algorithmAliasMap.end(); itTrig++) {
369  if (itTrig->second == trigName) {
370  bitNr = itTrig->first;
371 
372  errorCode = 0;
373  return bitNr;
374  }
375  }
376 
377  //
378  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig != m_algorithmMap.end(); itTrig++) {
379  if (itTrig->second == trigName) {
380  bitNr = itTrig->first;
381  errorCode = 0;
382  return bitNr;
383  }
384  }
385 
386  //
387  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig != m_technicalTriggerMap.end(); itTrig++) {
388  if (itTrig->second == trigName) {
389  bitNr = itTrig->first;
390  errorCode = 0;
391  return bitNr;
392  }
393  }
394 
395  errorCode = 1;
396  return bitNr;
397 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ gtPrescaleFactorsAlgoTrig()

const std::vector<std::vector<int> >& L1GtTriggerMenuLite::gtPrescaleFactorsAlgoTrig ( ) const
inline

get the prescale factors by reference / set the prescale factors

Definition at line 128 of file L1GtTriggerMenuLite.h.

References m_prescaleFactorsAlgoTrig.

Referenced by FWL1TriggerTableView::fillTable(), and L1GtUtils::retrieveL1GtTriggerMenuLite().

128 { return m_prescaleFactorsAlgoTrig; }
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors

◆ gtPrescaleFactorsTechTrig()

const std::vector<std::vector<int> >& L1GtTriggerMenuLite::gtPrescaleFactorsTechTrig ( ) const
inline

Definition at line 132 of file L1GtTriggerMenuLite.h.

References m_prescaleFactorsTechTrig.

Referenced by FWL1TriggerTableView::fillTable(), and L1GtUtils::retrieveL1GtTriggerMenuLite().

132 { return m_prescaleFactorsTechTrig; }
std::vector< std::vector< int > > m_prescaleFactorsTechTrig

◆ gtScaleDbKey()

const std::string& L1GtTriggerMenuLite::gtScaleDbKey ( ) const
inline

menu associated scale key

Definition at line 96 of file L1GtTriggerMenuLite.h.

References m_scaleDbKey.

96 { return m_scaleDbKey; }
std::string m_scaleDbKey
menu associated scale key

◆ gtTechnicalTriggerMap()

const L1TriggerMap& L1GtTriggerMenuLite::gtTechnicalTriggerMap ( ) const
inline

get / set the technical trigger map

Definition at line 111 of file L1GtTriggerMenuLite.h.

References m_technicalTriggerMap.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

111 { return m_technicalTriggerMap; }
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers

◆ gtTechTrigName()

const std::string * L1GtTriggerMenuLite::gtTechTrigName ( const unsigned int  bitNumber,
int &  errorCode 
) const

Definition at line 346 of file L1GtTriggerMenuLite.cc.

References L1TBPTX_cfi::bitNumber, m_technicalTriggerMap, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by PrescaleWeightProvider::prescaleWeight().

346  {
347  const std::string* gtTechTrigName = nullptr;
348 
349  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig != m_technicalTriggerMap.end(); itTrig++) {
350  if (itTrig->first == bitNumber) {
351  gtTechTrigName = &(itTrig->second);
352 
353  errorCode = 0;
354  return gtTechTrigName;
355  }
356  }
357 
358  errorCode = 1;
359  return gtTechTrigName;
360 }
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
const std::string * gtTechTrigName(const unsigned int bitNumber, int &errorCode) const

◆ gtTriggerMaskAlgoTrig()

const std::vector<unsigned int>& L1GtTriggerMenuLite::gtTriggerMaskAlgoTrig ( ) const
inline

get the trigger mask for physics algorithms

Definition at line 116 of file L1GtTriggerMenuLite.h.

References m_triggerMaskAlgoTrig.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

116 { return m_triggerMaskAlgoTrig; }
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms

◆ gtTriggerMaskTechTrig()

const std::vector<unsigned int>& L1GtTriggerMenuLite::gtTriggerMaskTechTrig ( ) const
inline

get the trigger mask for technical triggers

Definition at line 122 of file L1GtTriggerMenuLite.h.

References m_triggerMaskTechTrig.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

122 { return m_triggerMaskTechTrig; }
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers

◆ gtTriggerMenuImplementation()

const std::string& L1GtTriggerMenuLite::gtTriggerMenuImplementation ( ) const
inline

◆ gtTriggerMenuInterface()

const std::string& L1GtTriggerMenuLite::gtTriggerMenuInterface ( ) const
inline

get / set the trigger menu names

Definition at line 81 of file L1GtTriggerMenuLite.h.

References m_triggerMenuInterface.

81 { return m_triggerMenuInterface; }
std::string m_triggerMenuInterface
menu names

◆ gtTriggerMenuName()

const std::string& L1GtTriggerMenuLite::gtTriggerMenuName ( ) const
inline

Definition at line 86 of file L1GtTriggerMenuLite.h.

References m_triggerMenuName.

Referenced by L1GtUtils::l1TriggerMenu().

86 { return m_triggerMenuName; }

◆ gtTriggerResult()

const bool L1GtTriggerMenuLite::gtTriggerResult ( const std::string &  trigName,
const std::vector< bool > &  decWord,
int &  errorCode 
) const

get the result for a physics algorithm or a technical trigger with name trigName use directly the format of decisionWord (no typedef)

Definition at line 401 of file L1GtTriggerMenuLite.cc.

References L1TBPTX_cfi::bitNumber, m_algorithmAliasMap, m_algorithmMap, m_technicalTriggerMap, and cscTnPEfficiencyTask_cfi::trigName.

Referenced by FWL1TriggerTableView::fillTable().

403  {
404  bool trigResult = false;
405 
406  // try first physics algorithm aliases
407 
408  for (CItL1Trig itTrig = m_algorithmAliasMap.begin(); itTrig != m_algorithmAliasMap.end(); itTrig++) {
409  if (itTrig->second == trigName) {
410  unsigned int bitNumber = itTrig->first;
411 
412  if ((bitNumber >= decWord.size())) {
413  trigResult = false;
414  errorCode = 10;
415  } else {
416  trigResult = decWord[bitNumber];
417  errorCode = 0;
418  }
419 
420  return trigResult;
421  }
422  }
423 
424  // ... then physics algorithm names
425 
426  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig != m_algorithmMap.end(); itTrig++) {
427  if (itTrig->second == trigName) {
428  unsigned int bitNumber = itTrig->first;
429 
430  if ((bitNumber >= decWord.size())) {
431  trigResult = false;
432  errorCode = 10;
433  } else {
434  trigResult = decWord[bitNumber];
435  errorCode = 0;
436  }
437 
438  return trigResult;
439  }
440  }
441 
442  // ... then technical trigger names
443 
444  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig != m_technicalTriggerMap.end(); itTrig++) {
445  if (itTrig->second == trigName) {
446  unsigned int bitNumber = itTrig->first;
447 
448  if ((bitNumber >= decWord.size())) {
449  trigResult = false;
450  errorCode = 10;
451  } else {
452  trigResult = decWord[bitNumber];
453  errorCode = 0;
454  }
455 
456  return trigResult;
457  }
458  }
459 
460  // algorithm or technical trigger not in the menu
461 
462  errorCode = 1;
463  return false;
464 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ isProductEqual()

bool L1GtTriggerMenuLite::isProductEqual ( const L1GtTriggerMenuLite otherObj) const

merge rule: test on isProductEqual

Definition at line 177 of file L1GtTriggerMenuLite.cc.

References haddnano::otherObj.

177 { return (otherObj == *this); }

◆ operator!=()

bool L1GtTriggerMenuLite::operator!= ( const L1GtTriggerMenuLite otherObj) const

unequal operator

Definition at line 174 of file L1GtTriggerMenuLite.cc.

References haddnano::otherObj.

174 { return !(otherObj == *this); }

◆ operator=()

L1GtTriggerMenuLite & L1GtTriggerMenuLite::operator= ( const L1GtTriggerMenuLite rhs)

assignment operator

Definition at line 100 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, m_prescaleFactorsAlgoTrig, m_prescaleFactorsTechTrig, m_scaleDbKey, m_technicalTriggerMap, m_triggerMaskAlgoTrig, m_triggerMaskTechTrig, m_triggerMenuImplementation, m_triggerMenuInterface, and m_triggerMenuName.

100  {
101  if (this != &rhs) {
106 
109 
111 
114 
117  }
118 
119  // return the object
120  return *this;
121 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
std::string m_triggerMenuInterface
menu names
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ operator==()

bool L1GtTriggerMenuLite::operator== ( const L1GtTriggerMenuLite rhs) const

equal operator

Definition at line 124 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, m_prescaleFactorsAlgoTrig, m_prescaleFactorsTechTrig, m_scaleDbKey, m_technicalTriggerMap, m_triggerMaskAlgoTrig, m_triggerMaskTechTrig, m_triggerMenuImplementation, m_triggerMenuInterface, and m_triggerMenuName.

124  {
126  return false;
127  }
128 
130  return false;
131  }
132 
134  return false;
135  }
136 
137  if (m_scaleDbKey != rhs.m_scaleDbKey) {
138  return false;
139  }
140 
141  if (m_algorithmMap != rhs.m_algorithmMap) {
142  return false;
143  }
144 
146  return false;
147  }
148 
150  return false;
151  }
152 
154  return false;
155  }
156 
158  return false;
159  }
160 
162  return false;
163  }
164 
166  return false;
167  }
168 
169  // all members identical
170  return true;
171 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
std::string m_triggerMenuInterface
menu names
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ print()

void L1GtTriggerMenuLite::print ( std::ostream &  myCout,
int &  printVerbosity 
) const

print the trigger menu allow various verbosity levels

Definition at line 222 of file L1GtTriggerMenuLite.cc.

References L1TBPTX_cfi::bitNumber, m_algorithmAliasMap, m_algorithmMap, m_prescaleFactorsAlgoTrig, m_prescaleFactorsTechTrig, m_scaleDbKey, m_technicalTriggerMap, m_triggerMaskAlgoTrig, m_triggerMaskTechTrig, m_triggerMenuImplementation, m_triggerMenuInterface, m_triggerMenuName, and AlCaHLTBitMon_QueryRunRegistry::string.

222  {
223  //
224 
225  switch (printVerbosity) {
226  case 0: {
227  size_t nrDefinedAlgo = m_algorithmMap.size();
228  size_t nrDefinedTech = m_technicalTriggerMap.size();
229 
230  // header for printing algorithms
231 
232  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
233  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
234  << "\nL1 Trigger Menu Name: " << m_triggerMenuName
235  << "\nL1 Trigger Menu Implementation: " << m_triggerMenuImplementation
236  << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
237  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined."
238  << "\n\n"
239  << "Bit Number " << std::right << std::setw(35) << "Algorithm Name"
240  << " " << std::right << std::setw(35) << "Algorithm Alias"
241  << " " << std::right << std::setw(12) << "Trigger Mask";
242  for (unsigned iSet = 0; iSet < m_prescaleFactorsAlgoTrig.size(); iSet++) {
243  myCout << std::right << std::setw(10) << "PF Set " << std::right << std::setw(2) << iSet;
244  }
245 
246  myCout << std::endl;
247 
248  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig != m_algorithmMap.end(); itTrig++) {
249  const unsigned int bitNumber = itTrig->first;
250  const std::string& aName = itTrig->second;
251 
252  std::string aAlias;
253  CItL1Trig itAlias = m_algorithmAliasMap.find(bitNumber);
254  if (itAlias != m_algorithmAliasMap.end()) {
255  aAlias = itAlias->second;
256  }
257 
258  myCout << std::setw(6) << bitNumber << " " << std::right << std::setw(35) << aName << " " << std::right
259  << std::setw(35) << aAlias << " " << std::right << std::setw(12) << m_triggerMaskAlgoTrig[bitNumber];
260  for (unsigned iSet = 0; iSet < m_prescaleFactorsAlgoTrig.size(); iSet++) {
261  myCout << std::right << std::setw(12) << m_prescaleFactorsAlgoTrig[iSet][bitNumber];
262  }
263 
264  myCout << std::endl;
265  }
266 
267  myCout << "\nL1 Technical Triggers: " << nrDefinedTech << " technical triggers defined."
268  << "\n\n"
269  << std::endl;
270  if (nrDefinedTech) {
271  myCout << std::right << std::setw(6) << "Bit Number " << std::right << std::setw(45)
272  << " Technical trigger name "
273  << " " << std::right << std::setw(12) << "Trigger Mask";
274  for (unsigned iSet = 0; iSet < m_prescaleFactorsTechTrig.size(); iSet++) {
275  myCout << std::right << std::setw(10) << "PF Set " << std::right << std::setw(2) << iSet;
276  }
277 
278  myCout << std::endl;
279  }
280 
281  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig != m_technicalTriggerMap.end(); itTrig++) {
282  unsigned int bitNumber = itTrig->first;
283  std::string aName = itTrig->second;
284 
285  myCout << std::setw(6) << bitNumber << " " << std::right << std::setw(45) << aName << std::right
286  << std::setw(12) << m_triggerMaskTechTrig[bitNumber];
287  for (unsigned iSet = 0; iSet < m_prescaleFactorsTechTrig.size(); iSet++) {
288  myCout << std::right << std::setw(12) << m_prescaleFactorsTechTrig[iSet][bitNumber];
289  }
290 
291  myCout << std::endl;
292  }
293 
294  } break;
295  default: {
296  myCout << "\n ********** L1 Trigger Menu - printing ********** \n\n"
297  << "Verbosity level: " << printVerbosity << " not implemented.\n\n"
298  << std::endl;
299  } break;
300  }
301 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
std::string m_triggerMenuInterface
menu names
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ setGtAlgorithmAliasMap()

void L1GtTriggerMenuLite::setGtAlgorithmAliasMap ( const L1TriggerMap algoMap)

Definition at line 197 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap.

197 { m_algorithmAliasMap = algoMap; }
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)

◆ setGtAlgorithmMap()

void L1GtTriggerMenuLite::setGtAlgorithmMap ( const L1TriggerMap algoMap)

Definition at line 194 of file L1GtTriggerMenuLite.cc.

References m_algorithmMap.

194 { m_algorithmMap = algoMap; }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)

◆ setGtPrescaleFactorsAlgoTrig()

void L1GtTriggerMenuLite::setGtPrescaleFactorsAlgoTrig ( const std::vector< std::vector< int > > &  factorValue)

Definition at line 213 of file L1GtTriggerMenuLite.cc.

References m_prescaleFactorsAlgoTrig.

213  {
214  m_prescaleFactorsAlgoTrig = factorValue;
215 }
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors

◆ setGtPrescaleFactorsTechTrig()

void L1GtTriggerMenuLite::setGtPrescaleFactorsTechTrig ( const std::vector< std::vector< int > > &  factorValue)

Definition at line 217 of file L1GtTriggerMenuLite.cc.

References m_prescaleFactorsTechTrig.

217  {
218  m_prescaleFactorsTechTrig = factorValue;
219 }
std::vector< std::vector< int > > m_prescaleFactorsTechTrig

◆ setGtScaleDbKey()

void L1GtTriggerMenuLite::setGtScaleDbKey ( const std::string &  scaleKey)

Definition at line 191 of file L1GtTriggerMenuLite.cc.

References m_scaleDbKey.

191 { m_scaleDbKey = scaleKey; }
std::string m_scaleDbKey
menu associated scale key

◆ setGtTechnicalTriggerMap()

void L1GtTriggerMenuLite::setGtTechnicalTriggerMap ( const L1TriggerMap ttMap)

Definition at line 200 of file L1GtTriggerMenuLite.cc.

References m_technicalTriggerMap.

200 { m_technicalTriggerMap = ttMap; }
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers

◆ setGtTriggerMaskAlgoTrig()

void L1GtTriggerMenuLite::setGtTriggerMaskAlgoTrig ( const std::vector< unsigned int > &  maskValue)

set the trigger mask for physics algorithms

Definition at line 203 of file L1GtTriggerMenuLite.cc.

References m_triggerMaskAlgoTrig.

203  {
204  m_triggerMaskAlgoTrig = maskValue;
205 }
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms

◆ setGtTriggerMaskTechTrig()

void L1GtTriggerMenuLite::setGtTriggerMaskTechTrig ( const std::vector< unsigned int > &  maskValue)

set the trigger mask for technical triggers

Definition at line 208 of file L1GtTriggerMenuLite.cc.

References m_triggerMaskTechTrig.

208  {
209  m_triggerMaskTechTrig = maskValue;
210 }
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers

◆ setGtTriggerMenuImplementation()

void L1GtTriggerMenuLite::setGtTriggerMenuImplementation ( const std::string &  menuImplementation)

Definition at line 186 of file L1GtTriggerMenuLite.cc.

References m_triggerMenuImplementation.

186  {
187  m_triggerMenuImplementation = menuImplementation;
188 }
std::string m_triggerMenuImplementation

◆ setGtTriggerMenuInterface()

void L1GtTriggerMenuLite::setGtTriggerMenuInterface ( const std::string &  menuInterface)

Definition at line 180 of file L1GtTriggerMenuLite.cc.

References m_triggerMenuInterface.

180  {
181  m_triggerMenuInterface = menuInterface;
182 }
std::string m_triggerMenuInterface
menu names

◆ setGtTriggerMenuName()

void L1GtTriggerMenuLite::setGtTriggerMenuName ( const std::string &  menuName)

Definition at line 184 of file L1GtTriggerMenuLite.cc.

References m_triggerMenuName.

184 { m_triggerMenuName = menuName; }

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  streamRec,
const L1GtTriggerMenuLite result 
)
friend

output stream operator

Definition at line 304 of file L1GtTriggerMenuLite.cc.

304  {
305  int verbosityLevel = 0;
306 
307  result.print(streamRec, verbosityLevel);
308  return streamRec;
309 }
verbosityLevel
L1 selection andOrL1 = cms.bool( True ), l1Algorithms = cms.vstring("L1_ZeroBias_FirstCollidingBunch"...

Member Data Documentation

◆ m_algorithmAliasMap

L1TriggerMap L1GtTriggerMenuLite::m_algorithmAliasMap
private

◆ m_algorithmMap

L1TriggerMap L1GtTriggerMenuLite::m_algorithmMap
private

◆ m_prescaleFactorsAlgoTrig

std::vector<std::vector<int> > L1GtTriggerMenuLite::m_prescaleFactorsAlgoTrig
private

◆ m_prescaleFactorsTechTrig

std::vector<std::vector<int> > L1GtTriggerMenuLite::m_prescaleFactorsTechTrig
private

◆ m_scaleDbKey

std::string L1GtTriggerMenuLite::m_scaleDbKey
private

menu associated scale key

Definition at line 167 of file L1GtTriggerMenuLite.h.

Referenced by gtScaleDbKey(), L1GtTriggerMenuLite(), operator=(), operator==(), print(), and setGtScaleDbKey().

◆ m_technicalTriggerMap

L1TriggerMap L1GtTriggerMenuLite::m_technicalTriggerMap
private

◆ m_triggerMaskAlgoTrig

std::vector<unsigned int> L1GtTriggerMenuLite::m_triggerMaskAlgoTrig
private

trigger mask for physics algorithms

Definition at line 179 of file L1GtTriggerMenuLite.h.

Referenced by gtTriggerMaskAlgoTrig(), L1GtTriggerMenuLite(), operator=(), operator==(), print(), and setGtTriggerMaskAlgoTrig().

◆ m_triggerMaskTechTrig

std::vector<unsigned int> L1GtTriggerMenuLite::m_triggerMaskTechTrig
private

trigger mask for technical triggers

Definition at line 182 of file L1GtTriggerMenuLite.h.

Referenced by gtTriggerMaskTechTrig(), L1GtTriggerMenuLite(), operator=(), operator==(), print(), and setGtTriggerMaskTechTrig().

◆ m_triggerMenuImplementation

std::string L1GtTriggerMenuLite::m_triggerMenuImplementation
private

◆ m_triggerMenuInterface

std::string L1GtTriggerMenuLite::m_triggerMenuInterface
private

◆ m_triggerMenuName

std::string L1GtTriggerMenuLite::m_triggerMenuName
private