CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
TriggerMenu Class Reference

#include <TriggerMenu.h>

Public Member Functions

void buildGtConditionMap ()
 
const std::vector< std::vector< CaloTemplate > > & corCaloTemplate () const
 
const std::vector< std::vector< EnergySumTemplate > > & corEnergySumTemplate () const
 
const std::vector< std::vector< MuonTemplate > > & corMuonTemplate () const
 
const l1t::AlgorithmMapgtAlgorithmAliasMap () const
 get / set the algorithm map (by alias) More...
 
const l1t::AlgorithmMapgtAlgorithmMap () const
 get / set the algorithm map (by name) More...
 
const bool gtAlgorithmResult (const std::string &algName, const std::vector< bool > &decWord) const
 
const std::vector< l1t::ConditionMap > & gtConditionMap () const
 get / set / build the condition maps More...
 
const std::string & gtScaleDbKey () const
 menu associated scale key More...
 
const l1t::GlobalScalesgtScales () const
 get the scales More...
 
const unsigned long gtTriggerMenuImplementation () const
 
const std::string & gtTriggerMenuInterface () const
 get / set the trigger menu names More...
 
const std::string & gtTriggerMenuName () const
 
const unsigned long gtTriggerMenuUUID () const
 
TriggerMenuoperator= (const TriggerMenu &)
 
void print (std::ostream &, int &) const
 
void setCorCaloTemplate (const std::vector< std::vector< CaloTemplate > > &)
 
void setCorEnergySumTemplate (const std::vector< std::vector< EnergySumTemplate > > &)
 
void setCorMuonTemplate (const std::vector< std::vector< MuonTemplate > > &)
 
void setGtAlgorithmAliasMap (const l1t::AlgorithmMap &)
 
void setGtAlgorithmMap (const l1t::AlgorithmMap &)
 
void setGtConditionMap (const std::vector< l1t::ConditionMap > &)
 
void setGtScaleDbKey (const std::string &)
 
void setGtScales (const l1t::GlobalScales &)
 
void setGtTriggerMenuImplementation (const unsigned long)
 
void setGtTriggerMenuInterface (const std::string &)
 
void setGtTriggerMenuName (const std::string &)
 
void setGtTriggerMenuUUID (const unsigned long uuid)
 
void setVecCaloTemplate (const std::vector< std::vector< CaloTemplate > > &)
 
void setVecCorrelationTemplate (const std::vector< std::vector< CorrelationTemplate > > &)
 
void setVecCorrelationThreeBodyTemplate (const std::vector< std::vector< CorrelationThreeBodyTemplate > > &)
 
void setVecCorrelationWithOverlapRemovalTemplate (const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > &)
 
void setVecEnergySumTemplate (const std::vector< std::vector< EnergySumTemplate > > &)
 
void setVecExternalTemplate (const std::vector< std::vector< ExternalTemplate > > &)
 
void setVecMuonTemplate (const std::vector< std::vector< MuonTemplate > > &)
 
 TriggerMenu ()
 
 TriggerMenu (const std::string &, const unsigned int numberConditionChips, const std::vector< std::vector< MuonTemplate > > &, const std::vector< std::vector< CaloTemplate > > &, const std::vector< std::vector< EnergySumTemplate > > &, const std::vector< std::vector< ExternalTemplate > > &, const std::vector< std::vector< CorrelationTemplate > > &, const std::vector< std::vector< CorrelationThreeBodyTemplate > > &, const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > &, const std::vector< std::vector< MuonTemplate > > &, const std::vector< std::vector< CaloTemplate > > &, const std::vector< std::vector< EnergySumTemplate > > &)
 
 TriggerMenu (const TriggerMenu &)
 
const std::vector< std::vector< CaloTemplate > > & vecCaloTemplate () const
 
const std::vector< std::vector< CorrelationTemplate > > & vecCorrelationTemplate () const
 
const std::vector< std::vector< CorrelationThreeBodyTemplate > > & vecCorrelationThreeBodyTemplate () const
 
const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > & vecCorrelationWithOverlapRemovalTemplate () const
 
const std::vector< std::vector< EnergySumTemplate > > & vecEnergySumTemplate () const
 
const std::vector< std::vector< ExternalTemplate > > & vecExternalTemplate () const
 
const std::vector< std::vector< MuonTemplate > > & vecMuonTemplate () const
 get / set the vectors containing the conditions More...
 
virtual ~TriggerMenu ()
 

Private Attributes

l1t::AlgorithmMap m_algorithmAliasMap
 map containing the physics algorithms (by alias) More...
 
l1t::AlgorithmMap m_algorithmMap
 map containing the physics algorithms (by name) More...
 
std::vector< l1t::ConditionMapm_conditionMap
 map containing the conditions (per condition chip) - transient More...
 
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
 
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
 
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
 
l1t::GlobalScales m_gtScales
 map containing the technical triggers More...
 
std::string m_scaleDbKey
 menu associated scale key More...
 
unsigned long m_triggerMenuImplementation
 
std::string m_triggerMenuInterface
 menu names More...
 
std::string m_triggerMenuName
 
unsigned long m_triggerMenuUUID
 
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
 
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
 
std::vector< std::vector< CorrelationThreeBodyTemplate > > m_vecCorrelationThreeBodyTemplate
 
std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > m_vecCorrelationWithOverlapRemovalTemplate
 
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
 
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
 
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
 

Detailed Description

Description: L1 trigger menu.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna Vladimir Rekovic - extend for overlap removal Elisa Fontanesi - extended for three-body correlation conditions

$Date$ $Revision$

Definition at line 48 of file TriggerMenu.h.

Constructor & Destructor Documentation

◆ TriggerMenu() [1/3]

TriggerMenu::TriggerMenu ( )

Definition at line 32 of file TriggerMenu.cc.

33  : m_triggerMenuInterface("NULL"),
34  m_triggerMenuName("NULL"),
36  m_scaleDbKey("NULL") {
37  // empty
38 }

◆ TriggerMenu() [2/3]

TriggerMenu::TriggerMenu ( const std::string &  triggerMenuNameVal,
const unsigned int  numberConditionChips,
const std::vector< std::vector< MuonTemplate > > &  vecMuonTemplateVal,
const std::vector< std::vector< CaloTemplate > > &  vecCaloTemplateVal,
const std::vector< std::vector< EnergySumTemplate > > &  vecEnergySumTemplateVal,
const std::vector< std::vector< ExternalTemplate > > &  vecExternalTemplateVal,
const std::vector< std::vector< CorrelationTemplate > > &  vecCorrelationTemplateVal,
const std::vector< std::vector< CorrelationThreeBodyTemplate > > &  vecCorrelationThreeBodyTemplateVal,
const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > &  vecCorrelationWithOverlapRemovalTemplateVal,
const std::vector< std::vector< MuonTemplate > > &  corMuonTemplateVal,
const std::vector< std::vector< CaloTemplate > > &  corCaloTemplateVal,
const std::vector< std::vector< EnergySumTemplate > > &  corEnergySumTemplateVal 
)

Definition at line 40 of file TriggerMenu.cc.

55  : m_triggerMenuInterface("NULL"),
56  m_triggerMenuName(triggerMenuNameVal),
58  m_scaleDbKey("NULL"),
59  m_vecMuonTemplate(vecMuonTemplateVal),
60  m_vecCaloTemplate(vecCaloTemplateVal),
61  m_vecEnergySumTemplate(vecEnergySumTemplateVal),
62  m_vecExternalTemplate(vecExternalTemplateVal),
63  m_vecCorrelationTemplate(vecCorrelationTemplateVal),
64  m_vecCorrelationThreeBodyTemplate(vecCorrelationThreeBodyTemplateVal),
65  m_vecCorrelationWithOverlapRemovalTemplate(vecCorrelationWithOverlapRemovalTemplateVal),
66  m_corMuonTemplate(corMuonTemplateVal),
67  m_corCaloTemplate(corCaloTemplateVal),
68  m_corEnergySumTemplate(corEnergySumTemplateVal) {
69  m_conditionMap.resize(numberConditionChips);
72 }

References buildGtConditionMap(), m_conditionMap, and m_triggerMenuUUID.

◆ TriggerMenu() [3/3]

TriggerMenu::TriggerMenu ( const TriggerMenu rhs)

Definition at line 75 of file TriggerMenu.cc.

75  {
81 
82  // copy physics conditions
87 
94 
95  // rebuild condition map to update the pointers
96  // (only physics conditions are included in it)
97  m_conditionMap.resize(rhs.m_conditionMap.size());
98  (*this).buildGtConditionMap();
99 
100  // copy algorithm map
103 
104  // copy technical triggers
105  // (separate map for technical triggers and physics triggers)
106  //m_technicalTriggerMap = rhs.m_technicalTriggerMap;
107 }

References m_algorithmAliasMap, m_algorithmMap, m_conditionMap, m_corCaloTemplate, m_corEnergySumTemplate, m_corMuonTemplate, m_scaleDbKey, m_triggerMenuImplementation, m_triggerMenuInterface, m_triggerMenuName, m_triggerMenuUUID, m_vecCaloTemplate, m_vecCorrelationTemplate, m_vecCorrelationThreeBodyTemplate, m_vecCorrelationWithOverlapRemovalTemplate, m_vecEnergySumTemplate, m_vecExternalTemplate, and m_vecMuonTemplate.

◆ ~TriggerMenu()

TriggerMenu::~TriggerMenu ( )
virtual

Definition at line 110 of file TriggerMenu.cc.

110  {
111  // loop over condition maps (one map per condition chip)
112  for (std::vector<l1t::ConditionMap>::iterator itCondOnChip = m_conditionMap.begin();
113  itCondOnChip != m_conditionMap.end();
114  itCondOnChip++) {
115  itCondOnChip->clear();
116  }
117 
118  m_algorithmMap.clear();
119  m_algorithmAliasMap.clear();
120 }

References m_algorithmAliasMap, m_algorithmMap, and m_conditionMap.

Member Function Documentation

◆ buildGtConditionMap()

void TriggerMenu::buildGtConditionMap ( )

DMP: Comment out unused templates for now

Definition at line 161 of file TriggerMenu.cc.

161  {
162  // clear the conditions from the maps, if any
163  for (std::vector<l1t::ConditionMap>::iterator itCondOnChip = m_conditionMap.begin();
164  itCondOnChip != m_conditionMap.end();
165  itCondOnChip++) {
166  itCondOnChip->clear();
167  }
168 
169  // always check that the size of the condition map is greater than the size
170  // of the specific condition vector
171  size_t condMapSize = m_conditionMap.size();
172 
173  //
174  size_t vecMuonSize = m_vecMuonTemplate.size();
175  if (condMapSize < vecMuonSize) {
176  m_conditionMap.resize(vecMuonSize);
177  condMapSize = m_conditionMap.size();
178  }
179 
180  int chipNr = -1;
181 
182  for (std::vector<std::vector<MuonTemplate> >::iterator itCondOnChip = m_vecMuonTemplate.begin();
183  itCondOnChip != m_vecMuonTemplate.end();
184  itCondOnChip++) {
185  chipNr++;
186 
187  for (std::vector<MuonTemplate>::iterator itCond = itCondOnChip->begin(); itCond != itCondOnChip->end(); itCond++) {
188  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
189  }
190  }
191 
192  //
193  size_t vecCaloSize = m_vecCaloTemplate.size();
194  if (condMapSize < vecCaloSize) {
195  m_conditionMap.resize(vecCaloSize);
196  condMapSize = m_conditionMap.size();
197  }
198 
199  chipNr = -1;
200  for (std::vector<std::vector<CaloTemplate> >::iterator itCondOnChip = m_vecCaloTemplate.begin();
201  itCondOnChip != m_vecCaloTemplate.end();
202  itCondOnChip++) {
203  chipNr++;
204 
205  for (std::vector<CaloTemplate>::iterator itCond = itCondOnChip->begin(); itCond != itCondOnChip->end(); itCond++) {
206  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
207  }
208  }
209 
210  //
211  size_t vecEnergySumSize = m_vecEnergySumTemplate.size();
212  if (condMapSize < vecEnergySumSize) {
213  m_conditionMap.resize(vecEnergySumSize);
214  condMapSize = m_conditionMap.size();
215  }
216 
217  chipNr = -1;
218  for (std::vector<std::vector<EnergySumTemplate> >::iterator itCondOnChip = m_vecEnergySumTemplate.begin();
219  itCondOnChip != m_vecEnergySumTemplate.end();
220  itCondOnChip++) {
221  chipNr++;
222 
223  for (std::vector<EnergySumTemplate>::iterator itCond = itCondOnChip->begin(); itCond != itCondOnChip->end();
224  itCond++) {
225  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
226  }
227  }
228 
230  //
231  //
232  size_t vecExternalSize = m_vecExternalTemplate.size();
233  if (condMapSize < vecExternalSize) {
234  m_conditionMap.resize(vecExternalSize);
235  condMapSize = m_conditionMap.size();
236  }
237 
238  chipNr = -1;
239  for (std::vector<std::vector<ExternalTemplate> >::iterator itCondOnChip = m_vecExternalTemplate.begin();
240  itCondOnChip != m_vecExternalTemplate.end();
241  itCondOnChip++) {
242  chipNr++;
243 
244  for (std::vector<ExternalTemplate>::iterator itCond = itCondOnChip->begin(); itCond != itCondOnChip->end();
245  itCond++) {
246  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
247  }
248  }
249 
250  //
251  size_t vecCorrelationSize = m_vecCorrelationTemplate.size();
252  if (condMapSize < vecCorrelationSize) {
253  m_conditionMap.resize(vecCorrelationSize);
254  condMapSize = m_conditionMap.size();
255  }
256 
257  chipNr = -1;
258  for (std::vector<std::vector<CorrelationTemplate> >::iterator itCondOnChip = m_vecCorrelationTemplate.begin();
259  itCondOnChip != m_vecCorrelationTemplate.end();
260  itCondOnChip++) {
261  chipNr++;
262 
263  for (std::vector<CorrelationTemplate>::iterator itCond = itCondOnChip->begin(); itCond != itCondOnChip->end();
264  itCond++) {
265  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
266  }
267  }
268 
269  //
270  size_t vecCorrelationThreeBodySize = m_vecCorrelationThreeBodyTemplate.size();
271  if (condMapSize < vecCorrelationThreeBodySize) {
272  m_conditionMap.resize(vecCorrelationThreeBodySize);
273  condMapSize = m_conditionMap.size();
274  }
275 
276  chipNr = -1;
277  for (std::vector<std::vector<CorrelationThreeBodyTemplate> >::iterator itCondOnChip =
279  itCondOnChip != m_vecCorrelationThreeBodyTemplate.end();
280  itCondOnChip++) {
281  chipNr++;
282 
283  for (std::vector<CorrelationThreeBodyTemplate>::iterator itCond = itCondOnChip->begin();
284  itCond != itCondOnChip->end();
285  itCond++) {
286  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
287  }
288  }
289 
290  //
291  size_t vecCorrelationWORSize = m_vecCorrelationWithOverlapRemovalTemplate.size();
292  if (condMapSize < vecCorrelationWORSize) {
293  m_conditionMap.resize(vecCorrelationWORSize);
294  condMapSize = m_conditionMap.size();
295  }
296 
297  chipNr = -1;
298  for (std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> >::iterator itCondOnChip =
300  itCondOnChip != m_vecCorrelationWithOverlapRemovalTemplate.end();
301  itCondOnChip++) {
302  chipNr++;
303 
304  for (std::vector<CorrelationWithOverlapRemovalTemplate>::iterator itCond = itCondOnChip->begin();
305  itCond != itCondOnChip->end();
306  itCond++) {
307  (m_conditionMap.at(chipNr))[itCond->condName()] = &(*itCond);
308  }
309  }
310 }

References m_conditionMap, m_vecCaloTemplate, m_vecCorrelationTemplate, m_vecCorrelationThreeBodyTemplate, m_vecCorrelationWithOverlapRemovalTemplate, m_vecEnergySumTemplate, m_vecExternalTemplate, m_vecMuonTemplate, and trackerHitRTTI::vector.

Referenced by TriggerMenu().

◆ corCaloTemplate()

const std::vector<std::vector<CaloTemplate> >& TriggerMenu::corCaloTemplate ( ) const
inline

Definition at line 159 of file TriggerMenu.h.

159 { return m_corCaloTemplate; }

References m_corCaloTemplate.

Referenced by l1t::GlobalBoard::runGTL().

◆ corEnergySumTemplate()

const std::vector<std::vector<EnergySumTemplate> >& TriggerMenu::corEnergySumTemplate ( ) const
inline

Definition at line 165 of file TriggerMenu.h.

165  {
166  return m_corEnergySumTemplate;
167  }

References m_corEnergySumTemplate.

Referenced by l1t::GlobalBoard::runGTL().

◆ corMuonTemplate()

const std::vector<std::vector<MuonTemplate> >& TriggerMenu::corMuonTemplate ( ) const
inline

Definition at line 154 of file TriggerMenu.h.

154 { return m_corMuonTemplate; }

References m_corMuonTemplate.

Referenced by l1t::GlobalBoard::runGTL().

◆ gtAlgorithmAliasMap()

const l1t::AlgorithmMap& TriggerMenu::gtAlgorithmAliasMap ( ) const
inline

get / set the algorithm map (by alias)

Definition at line 177 of file TriggerMenu.h.

177 { return m_algorithmAliasMap; }

References m_algorithmAliasMap.

◆ gtAlgorithmMap()

const l1t::AlgorithmMap& TriggerMenu::gtAlgorithmMap ( ) const
inline

get / set the algorithm map (by name)

Definition at line 172 of file TriggerMenu.h.

172 { return m_algorithmMap; }

References m_algorithmMap.

Referenced by l1t::GlobalBoard::runGTL().

◆ gtAlgorithmResult()

const bool TriggerMenu::gtAlgorithmResult ( const std::string &  algName,
const std::vector< bool > &  decWord 
) const

get the result for algorithm with name algName use directly the format of decisionWord (no typedef)

Definition at line 571 of file TriggerMenu.cc.

571  {
572  bool algResult = false;
573 
574  l1t::CItAlgo itAlgo = m_algorithmMap.find(algName);
575  if (itAlgo != m_algorithmMap.end()) {
576  int bitNumber = (itAlgo->second).algoBitNumber();
577  algResult = decWord.at(bitNumber);
578  return algResult;
579  }
580 
581  // return false if the algorithm name is not found in the menu
582  // TODO throw exception or LogInfo would be better - but the class is used in
583  // XDAQ Trigger Supervisor (outside CMSSW) hence no CMSSW dependence
584  // is allowed here...
585 
586  return false;
587 }

References L1TBPTX_cfi::bitNumber, and m_algorithmMap.

◆ gtConditionMap()

const std::vector<l1t::ConditionMap>& TriggerMenu::gtConditionMap ( ) const
inline

get / set / build the condition maps

Definition at line 77 of file TriggerMenu.h.

77 { return m_conditionMap; }

References m_conditionMap.

Referenced by l1t::GlobalBoard::runGTL().

◆ gtScaleDbKey()

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

menu associated scale key

Definition at line 103 of file TriggerMenu.h.

103 { return m_scaleDbKey; }

References m_scaleDbKey.

◆ gtScales()

const l1t::GlobalScales& TriggerMenu::gtScales ( ) const
inline

get the scales

Definition at line 182 of file TriggerMenu.h.

182 { return m_gtScales; }

References m_gtScales.

Referenced by l1t::GlobalBoard::runGTL().

◆ gtTriggerMenuImplementation()

const unsigned long TriggerMenu::gtTriggerMenuImplementation ( ) const
inline

Definition at line 98 of file TriggerMenu.h.

References m_triggerMenuImplementation.

◆ gtTriggerMenuInterface()

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

get / set the trigger menu names

Definition at line 83 of file TriggerMenu.h.

83 { return m_triggerMenuInterface; }

References m_triggerMenuInterface.

◆ gtTriggerMenuName()

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

Definition at line 88 of file TriggerMenu.h.

88 { return m_triggerMenuName; }

References m_triggerMenuName.

◆ gtTriggerMenuUUID()

const unsigned long TriggerMenu::gtTriggerMenuUUID ( ) const
inline

Definition at line 93 of file TriggerMenu.h.

93 { return m_triggerMenuUUID; }

References m_triggerMenuUUID.

◆ operator=()

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

Definition at line 123 of file TriggerMenu.cc.

123  {
124  if (this != &rhs) {
129 
134 
141 
144 
145  // m_technicalTriggerMap = rhs.m_technicalTriggerMap;
146  }
147 
148  // rebuild condition map to update the pointers
149  // (only physics conditions are included in it)
150  m_conditionMap.resize(rhs.m_conditionMap.size());
151  (*this).buildGtConditionMap();
152 
153  // return the object
154  return *this;
155 }

References m_algorithmAliasMap, m_algorithmMap, m_conditionMap, m_corCaloTemplate, m_corEnergySumTemplate, m_corMuonTemplate, m_triggerMenuImplementation, m_triggerMenuInterface, m_triggerMenuName, m_triggerMenuUUID, m_vecCaloTemplate, m_vecCorrelationTemplate, m_vecCorrelationThreeBodyTemplate, m_vecCorrelationWithOverlapRemovalTemplate, m_vecEnergySumTemplate, m_vecExternalTemplate, and m_vecMuonTemplate.

◆ print()

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

print the trigger menu allow various verbosity levels

Definition at line 389 of file TriggerMenu.cc.

389  {
390  // use another map <int, GlobalAlgorithm> to get the menu sorted after bit number
391  // both algorithm and bit numbers are unique
392  std::map<int, const GlobalAlgorithm*> algoBitToAlgo;
393  typedef std::map<int, const GlobalAlgorithm*>::const_iterator CItBit;
394 
395  for (l1t::CItAlgo itAlgo = m_algorithmMap.begin(); itAlgo != m_algorithmMap.end(); itAlgo++) {
396  int bitNumber = (itAlgo->second).algoBitNumber();
397  algoBitToAlgo[bitNumber] = &(itAlgo->second);
398  }
399 
400  size_t nrDefinedAlgo = algoBitToAlgo.size();
401 
402  /*
403  // idem for technical trigger map - only name and bit number are relevant for them
404  std::map<int, const GlobalAlgorithm*> ttBitToTt;
405 
406  for (l1t::CItAlgo itAlgo = m_technicalTriggerMap.begin(); itAlgo
407  != m_technicalTriggerMap.end(); itAlgo++) {
408 
409  int bitNumber = (itAlgo->second).algoBitNumber();
410  ttBitToTt[bitNumber] = &(itAlgo->second);
411  }
412 
413  size_t nrDefinedTechTrig = ttBitToTt.size();
414 */
415  //
416 
417  switch (printVerbosity) {
418  case 0: {
419  // header for printing algorithms
420 
421  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
422  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
423  << "\nL1 Trigger Menu Name: " << m_triggerMenuName << "\nL1 Trigger Menu UUID (hash): 0x"
424  << std::hex << m_triggerMenuUUID << std::dec << "\nL1 Trigger Menu Firmware (hash): 0x" << std::hex
425  << m_triggerMenuImplementation << std::dec << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
426  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined."
427  << "\n\n"
428  << "Bit Number " << std::right << std::setw(35) << "Algorithm Name"
429  << " " << std::right << std::setw(35) << "Algorithm Alias" << std::endl;
430 
431  for (CItBit itBit = algoBitToAlgo.begin(); itBit != algoBitToAlgo.end(); itBit++) {
432  int bitNumber = itBit->first;
433  std::string aName = (itBit->second)->algoName();
434  std::string aAlias = (itBit->second)->algoAlias();
435 
436  myCout << std::setw(6) << bitNumber << " " << std::right << std::setw(35) << aName << " " << std::right
437  << std::setw(35) << aAlias << std::endl;
438  }
439  /*
440  myCout
441  << "\nL1 Technical Triggers: " << nrDefinedTechTrig
442  << " technical triggers defined." << "\n\n" << std::endl;
443  if (nrDefinedTechTrig) {
444  myCout << "Bit Number " << " Technical trigger name " << std::endl;
445  }
446 
447  for (CItBit itBit = ttBitToTt.begin(); itBit != ttBitToTt.end(); itBit++) {
448 
449  int bitNumber = itBit->first;
450  std::string aName = (itBit->second)->algoName();
451  std::string aAlias = (itBit->second)->algoAlias();
452 
453  myCout << std::setw(6) << bitNumber << " "
454  << std::right << std::setw(35) << aName << " "
455  << std::right << std::setw(35) << aAlias
456  << std::endl;
457  }
458 */
459  } break;
460 
461  case 1: {
462  // header for printing algorithms
463 
464  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
465  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
466  << "\nL1 Trigger Menu Name: " << m_triggerMenuName << "\nL1 Trigger Menu UUID (hash): 0x"
467  << std::hex << m_triggerMenuUUID << std::dec << "\nL1 Trigger Menu Firmware (hash): 0x" << std::hex
468  << m_triggerMenuImplementation << std::dec << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
469  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined."
470  << "\n\n"
471  << "Bit Number " << std::right << std::setw(35) << "Algorithm Name"
472  << " " << std::right << std::setw(35) << "Algorithm Alias"
473  << "\n Logical Expression \n"
474  << std::endl;
475 
476  for (CItBit itBit = algoBitToAlgo.begin(); itBit != algoBitToAlgo.end(); itBit++) {
477  int bitNumber = itBit->first;
478  std::string aName = (itBit->second)->algoName();
479  std::string aAlias = (itBit->second)->algoAlias();
480  std::string aLogicalExpression = (itBit->second)->algoLogicalExpression();
481 
482  myCout << std::setw(6) << bitNumber << " " << std::right << std::setw(35) << aName << " " << std::right
483  << std::setw(35) << aAlias << "\n Logical expression: " << aLogicalExpression << "\n"
484  << std::endl;
485  }
486  /*
487  myCout
488  << "\nL1 Technical Triggers: " << nrDefinedTechTrig
489  << " technical triggers defined." << "\n\n" << std::endl;
490  if (nrDefinedTechTrig) {
491  myCout << "Bit Number " << " Technical trigger name " << std::endl;
492  }
493 
494  for (CItBit itBit = ttBitToTt.begin(); itBit != ttBitToTt.end(); itBit++) {
495 
496  int bitNumber = itBit->first;
497  std::string aName = (itBit->second)->algoName();
498 
499  myCout << std::setw(6) << bitNumber << " " << aName << std::endl;
500  }
501 */
502  } break;
503 
504  case 2: {
505  // header for printing algorithms
506 
507  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
508  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
509  << "\nL1 Trigger Menu Name: " << m_triggerMenuName << "\nL1 Trigger Menu UUID (hash): 0x"
510  << std::hex << m_triggerMenuUUID << std::dec << "\nL1 Trigger Menu Firmware (hash): 0x" << std::hex
511  << m_triggerMenuImplementation << std::dec << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
512  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined."
513  << "\n\n"
514  << std::endl;
515 
516  for (CItBit itBit = algoBitToAlgo.begin(); itBit != algoBitToAlgo.end(); itBit++) {
517  (itBit->second)->print(myCout);
518  }
519 
520  myCout << "\nNumber of condition chips: " << m_conditionMap.size() << "\n" << std::endl;
521 
522  int chipNr = -1;
523  int totalNrConditions = 0;
524 
525  for (std::vector<l1t::ConditionMap>::const_iterator itCondOnChip = m_conditionMap.begin();
526  itCondOnChip != m_conditionMap.end();
527  itCondOnChip++) {
528  chipNr++;
529 
530  int condMapSize = itCondOnChip->size();
531  totalNrConditions += condMapSize;
532 
533  myCout << "\nTotal number of conditions on condition chip " << chipNr << ": " << condMapSize << " conditions.\n"
534  << std::endl;
535 
536  for (l1t::CItCond itCond = itCondOnChip->begin(); itCond != itCondOnChip->end(); itCond++) {
537  (itCond->second)->print(myCout);
538  }
539  }
540 
541  myCout << "\nTotal number of conditions on all condition chips: " << totalNrConditions << "\n" << std::endl;
542  /*
543  myCout
544  << "\nL1 Technical Triggers: " << nrDefinedTechTrig
545  << " technical triggers defined." << "\n\n" << std::endl;
546  if (nrDefinedTechTrig) {
547  myCout << "Bit Number " << " Technical trigger name " << std::endl;
548  }
549 
550  for (CItBit itBit = ttBitToTt.begin(); itBit != ttBitToTt.end(); itBit++) {
551 
552  int bitNumber = itBit->first;
553  std::string aName = (itBit->second)->algoName();
554 
555  myCout << std::setw(6) << bitNumber << " " << aName << std::endl;
556  }
557 */
558 
559  } break;
560 
561  default: {
562  myCout << "\n ********** L1 Trigger Menu - printing ********** \n\n"
563  << "Verbosity level: " << printVerbosity << " not implemented.\n\n"
564  << std::endl;
565  } break;
566  }
567 }

References HIPAlignmentAlgorithm_cfi::algoName, L1TBPTX_cfi::bitNumber, TauDecayModes::dec, m_algorithmMap, m_conditionMap, m_scaleDbKey, m_triggerMenuImplementation, m_triggerMenuInterface, m_triggerMenuName, m_triggerMenuUUID, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ setCorCaloTemplate()

void TriggerMenu::setCorCaloTemplate ( const std::vector< std::vector< CaloTemplate > > &  corCaloTempl)

Definition at line 367 of file TriggerMenu.cc.

367  {
368  m_corCaloTemplate = corCaloTempl;
369 }

References m_corCaloTemplate.

◆ setCorEnergySumTemplate()

void TriggerMenu::setCorEnergySumTemplate ( const std::vector< std::vector< EnergySumTemplate > > &  corEnergySumTempl)

Definition at line 371 of file TriggerMenu.cc.

371  {
372  m_corEnergySumTemplate = corEnergySumTempl;
373 }

References m_corEnergySumTemplate.

◆ setCorMuonTemplate()

void TriggerMenu::setCorMuonTemplate ( const std::vector< std::vector< MuonTemplate > > &  corMuonTempl)

Definition at line 363 of file TriggerMenu.cc.

363  {
364  m_corMuonTemplate = corMuonTempl;
365 }

References m_corMuonTemplate.

◆ setGtAlgorithmAliasMap()

void TriggerMenu::setGtAlgorithmAliasMap ( const l1t::AlgorithmMap algoMap)

Definition at line 379 of file TriggerMenu.cc.

379 { m_algorithmAliasMap = algoMap; }

References m_algorithmAliasMap.

◆ setGtAlgorithmMap()

void TriggerMenu::setGtAlgorithmMap ( const l1t::AlgorithmMap algoMap)

Definition at line 376 of file TriggerMenu.cc.

376 { m_algorithmMap = algoMap; }

References m_algorithmMap.

◆ setGtConditionMap()

void TriggerMenu::setGtConditionMap ( const std::vector< l1t::ConditionMap > &  condMap)

Definition at line 158 of file TriggerMenu.cc.

158 { m_conditionMap = condMap; }

References m_conditionMap.

◆ setGtScaleDbKey()

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

Definition at line 326 of file TriggerMenu.cc.

326 { m_scaleDbKey = scaleKey; }

References m_scaleDbKey.

◆ setGtScales()

void TriggerMenu::setGtScales ( const l1t::GlobalScales scales)

Definition at line 329 of file TriggerMenu.cc.

329 { m_gtScales = scales; }

References m_gtScales.

◆ setGtTriggerMenuImplementation()

void TriggerMenu::setGtTriggerMenuImplementation ( const unsigned long  menuImplementation)

Definition at line 319 of file TriggerMenu.cc.

319  {
320  m_triggerMenuImplementation = menuImplementation;
321 }

References m_triggerMenuImplementation.

◆ setGtTriggerMenuInterface()

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

Definition at line 313 of file TriggerMenu.cc.

313  {
314  m_triggerMenuInterface = menuInterface;
315 }

References m_triggerMenuInterface.

◆ setGtTriggerMenuName()

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

Definition at line 317 of file TriggerMenu.cc.

317 { m_triggerMenuName = menuName; }

References m_triggerMenuName.

◆ setGtTriggerMenuUUID()

void TriggerMenu::setGtTriggerMenuUUID ( const unsigned long  uuid)

Definition at line 323 of file TriggerMenu.cc.

323 { m_triggerMenuUUID = uuid; }

References m_triggerMenuUUID, and createPayload::uuid.

◆ setVecCaloTemplate()

void TriggerMenu::setVecCaloTemplate ( const std::vector< std::vector< CaloTemplate > > &  vecCaloTempl)

Definition at line 336 of file TriggerMenu.cc.

336  {
337  m_vecCaloTemplate = vecCaloTempl;
338 }

References m_vecCaloTemplate.

◆ setVecCorrelationTemplate()

void TriggerMenu::setVecCorrelationTemplate ( const std::vector< std::vector< CorrelationTemplate > > &  vecCorrelationTempl)

Definition at line 348 of file TriggerMenu.cc.

348  {
349  m_vecCorrelationTemplate = vecCorrelationTempl;
350 }

References m_vecCorrelationTemplate.

◆ setVecCorrelationThreeBodyTemplate()

void TriggerMenu::setVecCorrelationThreeBodyTemplate ( const std::vector< std::vector< CorrelationThreeBodyTemplate > > &  vecCorrelationThreeBodyTempl)

Definition at line 352 of file TriggerMenu.cc.

353  {
354  m_vecCorrelationThreeBodyTemplate = vecCorrelationThreeBodyTempl;
355 }

References m_vecCorrelationThreeBodyTemplate.

◆ setVecCorrelationWithOverlapRemovalTemplate()

void TriggerMenu::setVecCorrelationWithOverlapRemovalTemplate ( const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > &  vecCorrelationTempl)

Definition at line 357 of file TriggerMenu.cc.

358  {
359  m_vecCorrelationWithOverlapRemovalTemplate = vecCorrelationTempl;
360 }

References m_vecCorrelationWithOverlapRemovalTemplate.

◆ setVecEnergySumTemplate()

void TriggerMenu::setVecEnergySumTemplate ( const std::vector< std::vector< EnergySumTemplate > > &  vecEnergySumTempl)

Definition at line 340 of file TriggerMenu.cc.

340  {
341  m_vecEnergySumTemplate = vecEnergySumTempl;
342 }

References m_vecEnergySumTemplate.

◆ setVecExternalTemplate()

void TriggerMenu::setVecExternalTemplate ( const std::vector< std::vector< ExternalTemplate > > &  vecExternalTempl)

Definition at line 344 of file TriggerMenu.cc.

344  {
345  m_vecExternalTemplate = vecExternalTempl;
346 }

References m_vecExternalTemplate.

◆ setVecMuonTemplate()

void TriggerMenu::setVecMuonTemplate ( const std::vector< std::vector< MuonTemplate > > &  vecMuonTempl)

Definition at line 332 of file TriggerMenu.cc.

332  {
333  m_vecMuonTemplate = vecMuonTempl;
334 }

References m_vecMuonTemplate.

◆ vecCaloTemplate()

const std::vector<std::vector<CaloTemplate> >& TriggerMenu::vecCaloTemplate ( ) const
inline

Definition at line 113 of file TriggerMenu.h.

113 { return m_vecCaloTemplate; }

References m_vecCaloTemplate.

◆ vecCorrelationTemplate()

const std::vector<std::vector<CorrelationTemplate> >& TriggerMenu::vecCorrelationTemplate ( ) const
inline

Definition at line 131 of file TriggerMenu.h.

131  {
133  }

References m_vecCorrelationTemplate.

◆ vecCorrelationThreeBodyTemplate()

const std::vector<std::vector<CorrelationThreeBodyTemplate> >& TriggerMenu::vecCorrelationThreeBodyTemplate ( ) const
inline

Definition at line 138 of file TriggerMenu.h.

138  {
140  }

References m_vecCorrelationThreeBodyTemplate.

◆ vecCorrelationWithOverlapRemovalTemplate()

const std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> >& TriggerMenu::vecCorrelationWithOverlapRemovalTemplate ( ) const
inline

Definition at line 146 of file TriggerMenu.h.

146  {
148  }

References m_vecCorrelationWithOverlapRemovalTemplate.

◆ vecEnergySumTemplate()

const std::vector<std::vector<EnergySumTemplate> >& TriggerMenu::vecEnergySumTemplate ( ) const
inline

Definition at line 118 of file TriggerMenu.h.

118  {
119  return m_vecEnergySumTemplate;
120  }

References m_vecEnergySumTemplate.

◆ vecExternalTemplate()

const std::vector<std::vector<ExternalTemplate> >& TriggerMenu::vecExternalTemplate ( ) const
inline

Definition at line 124 of file TriggerMenu.h.

124  {
125  return m_vecExternalTemplate;
126  }

References m_vecExternalTemplate.

◆ vecMuonTemplate()

const std::vector<std::vector<MuonTemplate> >& TriggerMenu::vecMuonTemplate ( ) const
inline

get / set the vectors containing the conditions

Definition at line 108 of file TriggerMenu.h.

108 { return m_vecMuonTemplate; }

References m_vecMuonTemplate.

Member Data Documentation

◆ m_algorithmAliasMap

l1t::AlgorithmMap TriggerMenu::m_algorithmAliasMap
private

map containing the physics algorithms (by alias)

Definition at line 237 of file TriggerMenu.h.

Referenced by gtAlgorithmAliasMap(), operator=(), setGtAlgorithmAliasMap(), TriggerMenu(), and ~TriggerMenu().

◆ m_algorithmMap

l1t::AlgorithmMap TriggerMenu::m_algorithmMap
private

map containing the physics algorithms (by name)

Definition at line 234 of file TriggerMenu.h.

Referenced by gtAlgorithmMap(), gtAlgorithmResult(), operator=(), print(), setGtAlgorithmMap(), TriggerMenu(), and ~TriggerMenu().

◆ m_conditionMap

std::vector<l1t::ConditionMap> TriggerMenu::m_conditionMap
private

map containing the conditions (per condition chip) - transient

Definition at line 205 of file TriggerMenu.h.

Referenced by buildGtConditionMap(), gtConditionMap(), operator=(), print(), setGtConditionMap(), TriggerMenu(), and ~TriggerMenu().

◆ m_corCaloTemplate

std::vector<std::vector<CaloTemplate> > TriggerMenu::m_corCaloTemplate
private

Definition at line 230 of file TriggerMenu.h.

Referenced by corCaloTemplate(), operator=(), setCorCaloTemplate(), and TriggerMenu().

◆ m_corEnergySumTemplate

std::vector<std::vector<EnergySumTemplate> > TriggerMenu::m_corEnergySumTemplate
private

◆ m_corMuonTemplate

std::vector<std::vector<MuonTemplate> > TriggerMenu::m_corMuonTemplate
private

Definition at line 229 of file TriggerMenu.h.

Referenced by corMuonTemplate(), operator=(), setCorMuonTemplate(), and TriggerMenu().

◆ m_gtScales

l1t::GlobalScales TriggerMenu::m_gtScales
private

map containing the technical triggers

Definition at line 243 of file TriggerMenu.h.

Referenced by gtScales(), and setGtScales().

◆ m_scaleDbKey

std::string TriggerMenu::m_scaleDbKey
private

menu associated scale key

Definition at line 216 of file TriggerMenu.h.

Referenced by gtScaleDbKey(), print(), setGtScaleDbKey(), and TriggerMenu().

◆ m_triggerMenuImplementation

unsigned long TriggerMenu::m_triggerMenuImplementation
private

◆ m_triggerMenuInterface

std::string TriggerMenu::m_triggerMenuInterface
private

menu names

Definition at line 209 of file TriggerMenu.h.

Referenced by gtTriggerMenuInterface(), operator=(), print(), setGtTriggerMenuInterface(), and TriggerMenu().

◆ m_triggerMenuName

std::string TriggerMenu::m_triggerMenuName
private

Definition at line 210 of file TriggerMenu.h.

Referenced by gtTriggerMenuName(), operator=(), print(), setGtTriggerMenuName(), and TriggerMenu().

◆ m_triggerMenuUUID

unsigned long TriggerMenu::m_triggerMenuUUID
private

Definition at line 213 of file TriggerMenu.h.

Referenced by gtTriggerMenuUUID(), operator=(), print(), setGtTriggerMenuUUID(), and TriggerMenu().

◆ m_vecCaloTemplate

std::vector<std::vector<CaloTemplate> > TriggerMenu::m_vecCaloTemplate
private

◆ m_vecCorrelationTemplate

std::vector<std::vector<CorrelationTemplate> > TriggerMenu::m_vecCorrelationTemplate
private

◆ m_vecCorrelationThreeBodyTemplate

std::vector<std::vector<CorrelationThreeBodyTemplate> > TriggerMenu::m_vecCorrelationThreeBodyTemplate
private

◆ m_vecCorrelationWithOverlapRemovalTemplate

std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> > TriggerMenu::m_vecCorrelationWithOverlapRemovalTemplate
private

◆ m_vecEnergySumTemplate

std::vector<std::vector<EnergySumTemplate> > TriggerMenu::m_vecEnergySumTemplate
private

◆ m_vecExternalTemplate

std::vector<std::vector<ExternalTemplate> > TriggerMenu::m_vecExternalTemplate
private

◆ m_vecMuonTemplate

std::vector<std::vector<MuonTemplate> > TriggerMenu::m_vecMuonTemplate
private

vectors containing the conditions explicit, due to persistency...

Definition at line 220 of file TriggerMenu.h.

Referenced by buildGtConditionMap(), operator=(), setVecMuonTemplate(), TriggerMenu(), and vecMuonTemplate().

TriggerMenu::m_triggerMenuInterface
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:209
TriggerMenu::m_vecCorrelationThreeBodyTemplate
std::vector< std::vector< CorrelationThreeBodyTemplate > > m_vecCorrelationThreeBodyTemplate
Definition: TriggerMenu.h:227
TriggerMenu::m_triggerMenuName
std::string m_triggerMenuName
Definition: TriggerMenu.h:210
TriggerMenu::m_vecExternalTemplate
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:224
TriggerMenu::m_corCaloTemplate
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:230
HIPAlignmentAlgorithm_cfi.algoName
algoName
Definition: HIPAlignmentAlgorithm_cfi.py:5
TriggerMenu::m_scaleDbKey
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:216
TriggerMenu::m_corMuonTemplate
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:229
TriggerMenu::m_vecEnergySumTemplate
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:222
TriggerMenu::m_gtScales
l1t::GlobalScales m_gtScales
map containing the technical triggers
Definition: TriggerMenu.h:243
createPayload.uuid
uuid
Definition: createPayload.py:391
TriggerMenu::m_vecMuonTemplate
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:220
TriggerMenu::buildGtConditionMap
void buildGtConditionMap()
Definition: TriggerMenu.cc:161
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TriggerMenu::m_triggerMenuUUID
unsigned long m_triggerMenuUUID
Definition: TriggerMenu.h:213
TriggerMenu::m_algorithmMap
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:234
TriggerMenu::m_vecCorrelationWithOverlapRemovalTemplate
std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > m_vecCorrelationWithOverlapRemovalTemplate
Definition: TriggerMenu.h:228
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
TriggerMenu::m_triggerMenuImplementation
unsigned long m_triggerMenuImplementation
Definition: TriggerMenu.h:211
l1t::CItCond
ConditionMap::const_iterator CItCond
iterators through map containing the conditions
Definition: TriggerMenuFwd.h:35
l1t::CItAlgo
AlgorithmMap::const_iterator CItAlgo
iterators through map containing the algorithms
Definition: TriggerMenuFwd.h:39
TriggerMenu::m_algorithmAliasMap
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:237
L1TBPTX_cfi.bitNumber
bitNumber
Definition: L1TBPTX_cfi.py:26
TriggerMenu::m_vecCorrelationTemplate
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:226
TriggerMenu::print
void print(std::ostream &, int &) const
Definition: TriggerMenu.cc:389
TriggerMenu::m_conditionMap
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:205
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
TriggerMenu::m_vecCaloTemplate
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:221
TriggerMenu::m_corEnergySumTemplate
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:231