CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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

$Date$ $Revision$

Definition at line 42 of file L1GtTriggerMenuLite.h.

Member Typedef Documentation

typedef L1TriggerMap::const_iterator L1GtTriggerMenuLite::CItL1Trig

iterators through map containing the physics algorithms or the technical triggers

Definition at line 50 of file L1GtTriggerMenuLite.h.

typedef L1TriggerMap::iterator L1GtTriggerMenuLite::ItL1Trig

Definition at line 51 of file L1GtTriggerMenuLite.h.

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

map containing the physics algorithms or the technical triggers

Definition at line 47 of file L1GtTriggerMenuLite.h.

Constructor & Destructor Documentation

L1GtTriggerMenuLite::L1GtTriggerMenuLite ( )

constructor

Definition at line 39 of file L1GtTriggerMenuLite.cc.

39  :
41  m_triggerMenuImplementation("NULL"), m_scaleDbKey("NULL") {
42 
43  // empty
44 
45 }
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
std::string m_triggerMenuInterface
menu names
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 47 of file L1GtTriggerMenuLite.cc.

56  :
57  m_triggerMenuInterface("NULL"),
58  m_triggerMenuName(triggerMenuNameVal),
60  m_scaleDbKey("NULL"),
61  m_algorithmMap(algorithmMapVal),
62  m_algorithmAliasMap(algorithmAliasMapVal),
63  m_technicalTriggerMap(technicalTriggerMapVal),
64  m_triggerMaskAlgoTrig(triggerMaskAlgoTrigVal),
65  m_triggerMaskTechTrig(triggerMaskTechTrigVal),
66  m_prescaleFactorsAlgoTrig(prescaleFactorsAlgoTrigVal),
67  m_prescaleFactorsTechTrig(prescaleFactorsTechTrigVal)
68 
69 
70  {
71 
72  // empty
73 
74 }
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 ( const L1GtTriggerMenuLite rhs)

copy constructor

Definition at line 77 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.

77  {
78 
83 
84  // copy algorithm map
87 
88  // copy technical triggers
89  // (separate map for technical triggers and physics triggers)
91 
92  // copy masks
95 
96  // copy prescale factors
99 
100 }
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 ( )
virtual

Definition at line 103 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, and m_technicalTriggerMap.

104 {
105 
106  m_algorithmMap.clear();
107  m_algorithmAliasMap.clear();
108  m_technicalTriggerMap.clear();
109 
110 }
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

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 385 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap.

386  {
387 
388  const std::string* gtAlgorithmAlias = 0;
389 
390  for (CItL1Trig itTrig = m_algorithmAliasMap.begin(); itTrig
391  != m_algorithmAliasMap.end(); itTrig++) {
392 
393  if (itTrig->first == bitNumber) {
394 
395  gtAlgorithmAlias = &(itTrig->second);
396 
397  errorCode = 0;
398  return gtAlgorithmAlias;
399  }
400  }
401 
402  errorCode = 1;
403  return gtAlgorithmAlias;
404 
405 }
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)
const L1TriggerMap& L1GtTriggerMenuLite::gtAlgorithmAliasMap ( ) const
inline

get / set the algorithm map (by alias)

Definition at line 120 of file L1GtTriggerMenuLite.h.

References m_algorithmAliasMap.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

120  {
121  return m_algorithmAliasMap;
122  }
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
const L1TriggerMap& L1GtTriggerMenuLite::gtAlgorithmMap ( ) const
inline

get / set the algorithm map (by name)

Definition at line 113 of file L1GtTriggerMenuLite.h.

References m_algorithmMap.

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

113  {
114  return m_algorithmMap;
115  }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
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 409 of file L1GtTriggerMenuLite.cc.

References m_algorithmMap.

410  {
411 
412  const std::string* gtAlgorithmName = 0;
413 
414  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig
415  != m_algorithmMap.end(); itTrig++) {
416 
417  if (itTrig->first == bitNumber) {
418 
419  gtAlgorithmName = &(itTrig->second);
420 
421  errorCode = 0;
422  return gtAlgorithmName;
423  }
424  }
425 
426  errorCode = 1;
427  return gtAlgorithmName;
428 
429 }
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
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 455 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, and m_technicalTriggerMap.

456  {
457 
458  unsigned int bitNr = 999;
459 
460  //
461  for (CItL1Trig itTrig = m_algorithmAliasMap.begin(); itTrig
462  != m_algorithmAliasMap.end(); itTrig++) {
463 
464  if (itTrig->second == trigName) {
465 
466  bitNr = itTrig->first;
467 
468  errorCode = 0;
469  return bitNr;
470  }
471  }
472 
473  //
474  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig
475  != m_algorithmMap.end(); itTrig++) {
476 
477  if (itTrig->second == trigName) {
478 
479  bitNr = itTrig->first;
480  errorCode = 0;
481  return bitNr;
482  }
483  }
484 
485  //
486  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig
487  != m_technicalTriggerMap.end(); itTrig++) {
488 
489  if (itTrig->second == trigName) {
490 
491  bitNr = itTrig->first;
492  errorCode = 0;
493  return bitNr;
494  }
495  }
496 
497  errorCode = 1;
498  return bitNr;
499 
500 }
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)
const std::vector<std::vector<int> >& L1GtTriggerMenuLite::gtPrescaleFactorsAlgoTrig ( ) const
inline

get the prescale factors by reference / set the prescale factors

Definition at line 153 of file L1GtTriggerMenuLite.h.

References m_prescaleFactorsAlgoTrig.

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

154  {
156  }
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
const std::vector<std::vector<int> >& L1GtTriggerMenuLite::gtPrescaleFactorsTechTrig ( ) const
inline

Definition at line 160 of file L1GtTriggerMenuLite.h.

References m_prescaleFactorsTechTrig.

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

161  {
163  }
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
const std::string& L1GtTriggerMenuLite::gtScaleDbKey ( ) const
inline

menu associated scale key

Definition at line 106 of file L1GtTriggerMenuLite.h.

References m_scaleDbKey.

106  {
107  return m_scaleDbKey;
108  }
std::string m_scaleDbKey
menu associated scale key
const L1TriggerMap& L1GtTriggerMenuLite::gtTechnicalTriggerMap ( ) const
inline

get / set the technical trigger map

Definition at line 127 of file L1GtTriggerMenuLite.h.

References m_technicalTriggerMap.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

127  {
128  return m_technicalTriggerMap;
129  }
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
const std::string * L1GtTriggerMenuLite::gtTechTrigName ( const unsigned int  bitNumber,
int &  errorCode 
) const

Definition at line 431 of file L1GtTriggerMenuLite.cc.

References m_technicalTriggerMap.

432  {
433 
434  const std::string* gtTechTrigName = 0;
435 
436  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig
437  != m_technicalTriggerMap.end(); itTrig++) {
438 
439  if (itTrig->first == bitNumber) {
440 
441  gtTechTrigName = &(itTrig->second);
442 
443  errorCode = 0;
444  return gtTechTrigName;
445  }
446  }
447 
448  errorCode = 1;
449  return gtTechTrigName;
450 
451 }
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
const std::string * gtTechTrigName(const unsigned int bitNumber, int &errorCode) const
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
const std::vector<unsigned int>& L1GtTriggerMenuLite::gtTriggerMaskAlgoTrig ( ) const
inline

get the trigger mask for physics algorithms

Definition at line 134 of file L1GtTriggerMenuLite.h.

References m_triggerMaskAlgoTrig.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

135  {
136  return m_triggerMaskAlgoTrig;
137  }
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
const std::vector<unsigned int>& L1GtTriggerMenuLite::gtTriggerMaskTechTrig ( ) const
inline

get the trigger mask for technical triggers

Definition at line 144 of file L1GtTriggerMenuLite.h.

References m_triggerMaskTechTrig.

Referenced by L1GtUtils::retrieveL1GtTriggerMenuLite().

145  {
146  return m_triggerMaskTechTrig;
147  }
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
const std::string& L1GtTriggerMenuLite::gtTriggerMenuImplementation ( ) const
inline
const std::string& L1GtTriggerMenuLite::gtTriggerMenuInterface ( ) const
inline

get / set the trigger menu names

Definition at line 85 of file L1GtTriggerMenuLite.h.

References m_triggerMenuInterface.

85  {
87  }
std::string m_triggerMenuInterface
menu names
const std::string& L1GtTriggerMenuLite::gtTriggerMenuName ( ) const
inline

Definition at line 92 of file L1GtTriggerMenuLite.h.

References m_triggerMenuName.

Referenced by L1GtUtils::l1TriggerMenu().

92  {
93  return m_triggerMenuName;
94  }
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 504 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap, m_algorithmMap, and m_technicalTriggerMap.

Referenced by FWL1TriggerTableView::fillTable().

505  {
506 
507  bool trigResult = false;
508 
509  // try first physics algorithm aliases
510 
511  for (CItL1Trig itTrig = m_algorithmAliasMap.begin(); itTrig
512  != m_algorithmAliasMap.end(); itTrig++) {
513 
514  if (itTrig->second == trigName) {
515  unsigned int bitNumber = itTrig->first;
516 
517  if ((bitNumber >= decWord.size())) {
518  trigResult = false;
519  errorCode = 10;
520  } else {
521  trigResult = decWord[bitNumber];
522  errorCode = 0;
523  }
524 
525  return trigResult;
526  }
527  }
528 
529  // ... then physics algorithm names
530 
531  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig
532  != m_algorithmMap.end(); itTrig++) {
533 
534  if (itTrig->second == trigName) {
535  unsigned int bitNumber = itTrig->first;
536 
537  if ((bitNumber >= decWord.size())) {
538  trigResult = false;
539  errorCode = 10;
540  } else {
541  trigResult = decWord[bitNumber];
542  errorCode = 0;
543  }
544 
545  return trigResult;
546  }
547  }
548 
549  // ... then technical trigger names
550 
551  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig
552  != m_technicalTriggerMap.end(); itTrig++) {
553 
554  if (itTrig->second == trigName) {
555  unsigned int bitNumber = itTrig->first;
556 
557  if ((bitNumber >= decWord.size())) {
558  trigResult = false;
559  errorCode = 10;
560  } else {
561  trigResult = decWord[bitNumber];
562  errorCode = 0;
563  }
564 
565  return trigResult;
566  }
567  }
568 
569  // algorithm or technical trigger not in the menu
570 
571  errorCode = 1;
572  return false;
573 
574 }
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)
bool L1GtTriggerMenuLite::isProductEqual ( const L1GtTriggerMenuLite otherObj) const

merge rule: test on isProductEqual

Definition at line 200 of file L1GtTriggerMenuLite.cc.

200  {
201 
202  return (otherObj == *this);
203 }
bool L1GtTriggerMenuLite::operator!= ( const L1GtTriggerMenuLite otherObj) const

unequal operator

Definition at line 193 of file L1GtTriggerMenuLite.cc.

193  {
194 
195  return !(otherObj == *this);
196 
197 }
L1GtTriggerMenuLite & L1GtTriggerMenuLite::operator= ( const L1GtTriggerMenuLite rhs)

assignment operator

Definition at line 113 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.

114  {
115 
116  if (this != &rhs) {
117 
122 
125 
127 
130 
133  }
134 
135  // return the object
136  return *this;
137 
138 }
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)
bool L1GtTriggerMenuLite::operator== ( const L1GtTriggerMenuLite rhs) const

equal operator

Definition at line 141 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.

141  {
142 
144  return false;
145  }
146 
148  return false;
149  }
150 
152  return false;
153  }
154 
155  if (m_scaleDbKey != rhs.m_scaleDbKey) {
156  return false;
157  }
158 
159  if (m_algorithmMap != rhs.m_algorithmMap) {
160  return false;
161  }
162 
164  return false;
165  }
166 
168  return false;
169  }
170 
172  return false;
173  }
174 
176  return false;
177  }
178 
180  return false;
181  }
182 
184  return false;
185  }
186 
187  // all members identical
188  return true;
189 
190 }
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)
void L1GtTriggerMenuLite::print ( std::ostream &  myCout,
int &  printVerbosity 
) const

print the trigger menu allow various verbosity levels

Definition at line 274 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.

Referenced by operator<<().

274  {
275 
276  //
277 
278  switch (printVerbosity) {
279 
280  case 0: {
281 
282  size_t nrDefinedAlgo = m_algorithmMap.size();
283  size_t nrDefinedTech = m_technicalTriggerMap.size();
284 
285  // header for printing algorithms
286 
287  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
288  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
289  << "\nL1 Trigger Menu Name: " << m_triggerMenuName
290  << "\nL1 Trigger Menu Implementation: " << m_triggerMenuImplementation
291  << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
292  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined." << "\n\n"
293  << "Bit Number "
294  << std::right << std::setw(35) << "Algorithm Name" << " "
295  << std::right << std::setw(35) << "Algorithm Alias" << " "
296  << std::right << std::setw(12) << "Trigger Mask";
297  for (unsigned iSet = 0; iSet < m_prescaleFactorsAlgoTrig.size(); iSet++) {
298  myCout << std::right << std::setw(10) << "PF Set "
299  << std::right << std::setw(2) << iSet;
300  }
301 
302  myCout << std::endl;
303 
304 
305  for (CItL1Trig itTrig = m_algorithmMap.begin(); itTrig
306  != m_algorithmMap.end(); itTrig++) {
307 
308  const unsigned int bitNumber = itTrig->first;
309  const std::string& aName = itTrig->second;
310 
311  std::string aAlias;
312  CItL1Trig itAlias = m_algorithmAliasMap.find(bitNumber);
313  if (itAlias != m_algorithmAliasMap.end()) {
314  aAlias = itAlias->second;
315  }
316 
317  myCout << std::setw(6) << bitNumber << " "
318  << std::right << std::setw(35) << aName << " "
319  << std::right << std::setw(35) << aAlias << " "
320  << std::right << std::setw(12) << m_triggerMaskAlgoTrig[bitNumber];
321  for (unsigned iSet = 0; iSet < m_prescaleFactorsAlgoTrig.size(); iSet++) {
322  myCout << std::right << std::setw(12) << m_prescaleFactorsAlgoTrig[iSet][bitNumber];
323  }
324 
325  myCout << std::endl;
326  }
327 
328  myCout << "\nL1 Technical Triggers: " << nrDefinedTech
329  << " technical triggers defined." << "\n\n" << std::endl;
330  if (nrDefinedTech) {
331  myCout
332  << std::right << std::setw(6) << "Bit Number "
333  << std::right << std::setw(45) << " Technical trigger name " << " "
334  << std::right << std::setw(12) << "Trigger Mask";
335  for (unsigned iSet = 0; iSet < m_prescaleFactorsTechTrig.size(); iSet++) {
336  myCout << std::right << std::setw(10) << "PF Set "
337  << std::right << std::setw(2) << iSet;
338  }
339 
340  myCout << std::endl;
341  }
342 
343  for (CItL1Trig itTrig = m_technicalTriggerMap.begin(); itTrig
344  != m_technicalTriggerMap.end(); itTrig++) {
345 
346  unsigned int bitNumber = itTrig->first;
347  std::string aName = itTrig->second;
348 
349  myCout << std::setw(6) << bitNumber << " "
350  << std::right << std::setw(45) << aName
351  << std::right << std::setw(12) << m_triggerMaskTechTrig[bitNumber];
352  for (unsigned iSet = 0; iSet < m_prescaleFactorsTechTrig.size(); iSet++) {
353  myCout << std::right << std::setw(12) << m_prescaleFactorsTechTrig[iSet][bitNumber];
354  }
355 
356  myCout << std::endl;
357 
358  }
359 
360 
361 
362  }
363  break;
364  default: {
365  myCout << "\n ********** L1 Trigger Menu - printing ********** \n\n"
366  << "Verbosity level: " << printVerbosity << " not implemented.\n\n"
367  << std::endl;
368  }
369  break;
370  }
371 
372 }
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)
void L1GtTriggerMenuLite::setGtAlgorithmAliasMap ( const L1TriggerMap algoMap)

Definition at line 232 of file L1GtTriggerMenuLite.cc.

References m_algorithmAliasMap.

232  {
233  m_algorithmAliasMap = algoMap;
234 }
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
void L1GtTriggerMenuLite::setGtAlgorithmMap ( const L1TriggerMap algoMap)

Definition at line 227 of file L1GtTriggerMenuLite.cc.

References m_algorithmMap.

227  {
228  m_algorithmMap = algoMap;
229 }
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
void L1GtTriggerMenuLite::setGtPrescaleFactorsAlgoTrig ( const std::vector< std::vector< int > > &  factorValue)

Definition at line 259 of file L1GtTriggerMenuLite.cc.

References m_prescaleFactorsAlgoTrig.

260  {
261 
262  m_prescaleFactorsAlgoTrig = factorValue;
263 
264 }
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
void L1GtTriggerMenuLite::setGtPrescaleFactorsTechTrig ( const std::vector< std::vector< int > > &  factorValue)

Definition at line 266 of file L1GtTriggerMenuLite.cc.

References m_prescaleFactorsTechTrig.

267  {
268 
269  m_prescaleFactorsTechTrig = factorValue;
270 
271 }
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
void L1GtTriggerMenuLite::setGtScaleDbKey ( const std::string &  scaleKey)

Definition at line 222 of file L1GtTriggerMenuLite.cc.

References m_scaleDbKey.

222  {
223  m_scaleDbKey = scaleKey;
224 }
std::string m_scaleDbKey
menu associated scale key
void L1GtTriggerMenuLite::setGtTechnicalTriggerMap ( const L1TriggerMap ttMap)

Definition at line 237 of file L1GtTriggerMenuLite.cc.

References m_technicalTriggerMap.

237  {
238  m_technicalTriggerMap = ttMap;
239 }
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
void L1GtTriggerMenuLite::setGtTriggerMaskAlgoTrig ( const std::vector< unsigned int > &  maskValue)

set the trigger mask for physics algorithms

Definition at line 242 of file L1GtTriggerMenuLite.cc.

References m_triggerMaskAlgoTrig.

243  {
244 
245  m_triggerMaskAlgoTrig = maskValue;
246 
247 }
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
void L1GtTriggerMenuLite::setGtTriggerMaskTechTrig ( const std::vector< unsigned int > &  maskValue)

set the trigger mask for technical triggers

Definition at line 250 of file L1GtTriggerMenuLite.cc.

References m_triggerMaskTechTrig.

251 {
252 
253  m_triggerMaskTechTrig = maskValue;
254 
255 }
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
void L1GtTriggerMenuLite::setGtTriggerMenuImplementation ( const std::string &  menuImplementation)

Definition at line 216 of file L1GtTriggerMenuLite.cc.

References m_triggerMenuImplementation.

217  {
218  m_triggerMenuImplementation = menuImplementation;
219 }
std::string m_triggerMenuImplementation
void L1GtTriggerMenuLite::setGtTriggerMenuInterface ( const std::string &  menuInterface)

Definition at line 207 of file L1GtTriggerMenuLite.cc.

References m_triggerMenuInterface.

208  {
209  m_triggerMenuInterface = menuInterface;
210 }
std::string m_triggerMenuInterface
menu names
void L1GtTriggerMenuLite::setGtTriggerMenuName ( const std::string &  menuName)

Definition at line 212 of file L1GtTriggerMenuLite.cc.

References m_triggerMenuName.

212  {
213  m_triggerMenuName = menuName;
214 }

Friends And Related Function Documentation

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

output stream operator

Definition at line 375 of file L1GtTriggerMenuLite.cc.

376  {
377  int verbosityLevel = 0;
378 
379  result.print(streamRec, verbosityLevel);
380  return streamRec;
381 
382 }
void print(std::ostream &, int &) const

Member Data Documentation

L1TriggerMap L1GtTriggerMenuLite::m_algorithmAliasMap
private
L1TriggerMap L1GtTriggerMenuLite::m_algorithmMap
private
std::vector<std::vector<int> > L1GtTriggerMenuLite::m_prescaleFactorsAlgoTrig
private
std::vector<std::vector<int> > L1GtTriggerMenuLite::m_prescaleFactorsTechTrig
private
std::string L1GtTriggerMenuLite::m_scaleDbKey
private

menu associated scale key

Definition at line 202 of file L1GtTriggerMenuLite.h.

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

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

trigger mask for physics algorithms

Definition at line 214 of file L1GtTriggerMenuLite.h.

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

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

trigger mask for technical triggers

Definition at line 217 of file L1GtTriggerMenuLite.h.

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

std::string L1GtTriggerMenuLite::m_triggerMenuImplementation
private
std::string L1GtTriggerMenuLite::m_triggerMenuInterface
private
std::string L1GtTriggerMenuLite::m_triggerMenuName
private