CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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::L1TGlobalScalesgtScales () const
 get the scales More...
 
const std::string & gtTriggerMenuImplementation () const
 
const std::string & gtTriggerMenuInterface () const
 get / set the trigger menu names More...
 
const std::string & gtTriggerMenuName () 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::L1TGlobalScales &)
 
void setGtTriggerMenuImplementation (const std::string &)
 
void setGtTriggerMenuInterface (const std::string &)
 
void setGtTriggerMenuName (const std::string &)
 
void setVecCaloTemplate (const std::vector< std::vector< CaloTemplate > > &)
 
void setVecCorrelationTemplate (const std::vector< std::vector< CorrelationTemplate > > &)
 
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< 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
< 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::L1TGlobalScales m_gtScales
 map containing the technical triggers More...
 
std::string m_scaleDbKey
 menu associated scale key More...
 
std::string m_triggerMenuImplementation
 
std::string m_triggerMenuInterface
 menu names More...
 
std::string m_triggerMenuName
 
std::vector< std::vector
< CaloTemplate > > 
m_vecCaloTemplate
 
std::vector< std::vector
< CorrelationTemplate > > 
m_vecCorrelationTemplate
 
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

$Date$ $Revision$

Definition at line 45 of file TriggerMenu.h.

Constructor & Destructor Documentation

TriggerMenu::TriggerMenu ( )

Definition at line 32 of file TriggerMenu.cc.

33  : m_triggerMenuInterface( "NULL" ),
34  m_triggerMenuName( "NULL" ),
36  m_scaleDbKey( "NULL" )
37 {
38  // empty
39 }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:235
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
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< MuonTemplate > > &  corMuonTemplateVal,
const std::vector< std::vector< CaloTemplate > > &  corCaloTemplateVal,
const std::vector< std::vector< EnergySumTemplate > > &  corEnergySumTemplateVal 
)

Definition at line 41 of file TriggerMenu.cc.

References buildGtConditionMap(), and m_conditionMap.

53  :
54  m_triggerMenuInterface( "NULL" ),
55  m_triggerMenuName(triggerMenuNameVal),
57  m_scaleDbKey( "NULL" ),
58  m_vecMuonTemplate(vecMuonTemplateVal),
59  m_vecCaloTemplate(vecCaloTemplateVal),
60  m_vecEnergySumTemplate(vecEnergySumTemplateVal),
61  m_vecExternalTemplate(vecExternalTemplateVal),
62  m_vecCorrelationTemplate(vecCorrelationTemplateVal),
63  m_corMuonTemplate(corMuonTemplateVal),
64  m_corCaloTemplate(corCaloTemplateVal),
65  m_corEnergySumTemplate(corEnergySumTemplateVal)
66 {
67 
68  m_conditionMap.resize(numberConditionChips);
70 
71 }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:235
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:239
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:243
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:246
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:247
void buildGtConditionMap()
Definition: TriggerMenu.cc:166
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:241
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:248
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:245
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:240
TriggerMenu::TriggerMenu ( const TriggerMenu rhs)

Definition at line 74 of file TriggerMenu.cc.

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

75 {
76 
81 
82  // copy physics conditions
87 
92 
93  // rebuild condition map to update the pointers
94  // (only physics conditions are included in it)
95  m_conditionMap.resize(rhs.m_conditionMap.size());
96  (*this).buildGtConditionMap();
97 
98  // copy algorithm map
101 
102  // copy technical triggers
103  // (separate map for technical triggers and physics triggers)
104  //m_technicalTriggerMap = rhs.m_technicalTriggerMap;
105 
106 }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:235
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:239
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:243
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:246
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:247
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:241
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:254
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:248
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:245
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:240
TriggerMenu::~TriggerMenu ( )
virtual

Definition at line 109 of file TriggerMenu.cc.

References m_algorithmAliasMap, m_algorithmMap, and m_conditionMap.

110 {
111 
112  // loop over condition maps (one map per condition chip)
113  for (std::vector<l1t::ConditionMap>::iterator
114  itCondOnChip = m_conditionMap.begin(); itCondOnChip != m_conditionMap.end(); itCondOnChip++) {
115 
116  itCondOnChip->clear();
117 
118  }
119 
120  m_algorithmMap.clear();
121  m_algorithmAliasMap.clear();
122 }
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:254

Member Function Documentation

void TriggerMenu::buildGtConditionMap ( )

DMP: Comment out unused templates for now

Definition at line 166 of file TriggerMenu.cc.

References m_conditionMap, m_vecCaloTemplate, m_vecCorrelationTemplate, m_vecEnergySumTemplate, m_vecExternalTemplate, and m_vecMuonTemplate.

Referenced by TriggerMenu().

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

Definition at line 163 of file TriggerMenu.h.

References m_corCaloTemplate.

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

163  {
164  return m_corCaloTemplate;
165  }
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:247
const std::vector<std::vector<EnergySumTemplate> >& TriggerMenu::corEnergySumTemplate ( ) const
inline

Definition at line 172 of file TriggerMenu.h.

References m_corEnergySumTemplate.

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

172  {
173 
174  return m_corEnergySumTemplate;
175  }
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:248
const std::vector<std::vector<MuonTemplate> >& TriggerMenu::corMuonTemplate ( ) const
inline

Definition at line 156 of file TriggerMenu.h.

References m_corMuonTemplate.

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

156  {
157  return m_corMuonTemplate;
158  }
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:246
const l1t::AlgorithmMap& TriggerMenu::gtAlgorithmAliasMap ( ) const
inline

get / set the algorithm map (by alias)

Definition at line 189 of file TriggerMenu.h.

References m_algorithmAliasMap.

189  {
190  return m_algorithmAliasMap;
191  }
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:254
const l1t::AlgorithmMap& TriggerMenu::gtAlgorithmMap ( ) const
inline

get / set the algorithm map (by name)

Definition at line 182 of file TriggerMenu.h.

References m_algorithmMap.

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

182  {
183  return m_algorithmMap;
184  }
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
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 609 of file TriggerMenu.cc.

References m_algorithmMap.

610  {
611 
612  bool algResult = false;
613 
614  l1t::CItAlgo itAlgo = m_algorithmMap.find(algName);
615  if (itAlgo != m_algorithmMap.end()) {
616  int bitNumber = (itAlgo->second).algoBitNumber();
617  algResult = decWord.at(bitNumber);
618  return algResult;
619  }
620 
621  // return false if the algorithm name is not found in the menu
622  // TODO throw exception or LogInfo would be better - but the class is used in
623  // XDAQ Trigger Supervisor (outside CMSSW) hence no CMSSW dependence
624  // is allowed here...
625 
626  return false;
627 
628 }
AlgorithmMap::const_iterator CItAlgo
iterators through map containing the algorithms
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
const std::vector<l1t::ConditionMap>& TriggerMenu::gtConditionMap ( ) const
inline

get / set / build the condition maps

Definition at line 76 of file TriggerMenu.h.

References m_conditionMap.

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

76  {
77  return m_conditionMap;
78  }
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
const std::string& TriggerMenu::gtScaleDbKey ( ) const
inline

menu associated scale key

Definition at line 105 of file TriggerMenu.h.

References m_scaleDbKey.

105  {
106  return m_scaleDbKey;
107  }
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:235
const l1t::L1TGlobalScales& TriggerMenu::gtScales ( ) const
inline

get the scales

Definition at line 197 of file TriggerMenu.h.

References m_gtScales.

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

197  {
198  return m_gtScales;
199  }
l1t::L1TGlobalScales m_gtScales
map containing the technical triggers
Definition: TriggerMenu.h:260
const std::string& TriggerMenu::gtTriggerMenuImplementation ( ) const
inline

Definition at line 98 of file TriggerMenu.h.

References m_triggerMenuImplementation.

98  {
100  }
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
const std::string& TriggerMenu::gtTriggerMenuInterface ( ) const
inline

get / set the trigger menu names

Definition at line 84 of file TriggerMenu.h.

References m_triggerMenuInterface.

84  {
86  }
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
const std::string& TriggerMenu::gtTriggerMenuName ( ) const
inline

Definition at line 91 of file TriggerMenu.h.

References m_triggerMenuName.

91  {
92  return m_triggerMenuName;
93  }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
TriggerMenu & TriggerMenu::operator= ( const TriggerMenu rhs)

Definition at line 125 of file TriggerMenu.cc.

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

125  {
126 
127  if ( this != &rhs ) {
128 
132 
137 
142 
145 
146 // m_technicalTriggerMap = rhs.m_technicalTriggerMap;
147 
148  }
149 
150  // rebuild condition map to update the pointers
151  // (only physics conditions are included in it)
152  m_conditionMap.resize(rhs.m_conditionMap.size());
153  (*this).buildGtConditionMap();
154 
155  // return the object
156  return *this;
157 
158 }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:239
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:243
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:246
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:247
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:241
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:254
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:248
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:245
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:240
void TriggerMenu::print ( std::ostream &  myCout,
int &  printVerbosity 
) const

print the trigger menu allow various verbosity levels

Definition at line 400 of file TriggerMenu.cc.

References m_algorithmMap, m_conditionMap, m_scaleDbKey, m_triggerMenuImplementation, m_triggerMenuInterface, m_triggerMenuName, and AlCaHLTBitMon_QueryRunRegistry::string.

400  {
401 
402  // use another map <int, L1GtAlgorithm> to get the menu sorted after bit number
403  // both algorithm and bit numbers are unique
404  std::map<int, const L1GtAlgorithm*> algoBitToAlgo;
405  typedef std::map<int, const L1GtAlgorithm*>::const_iterator CItBit;
406 
407  for (l1t::CItAlgo itAlgo = m_algorithmMap.begin(); itAlgo != m_algorithmMap.end(); itAlgo++) {
408 
409  int bitNumber = (itAlgo->second).algoBitNumber();
410  algoBitToAlgo[bitNumber] = &(itAlgo->second);
411  }
412 
413  size_t nrDefinedAlgo = algoBitToAlgo.size();
414 
415 /*
416  // idem for technical trigger map - only name and bit number are relevant for them
417  std::map<int, const L1GtAlgorithm*> ttBitToTt;
418 
419  for (l1t::CItAlgo itAlgo = m_technicalTriggerMap.begin(); itAlgo
420  != m_technicalTriggerMap.end(); itAlgo++) {
421 
422  int bitNumber = (itAlgo->second).algoBitNumber();
423  ttBitToTt[bitNumber] = &(itAlgo->second);
424  }
425 
426  size_t nrDefinedTechTrig = ttBitToTt.size();
427 */
428  //
429 
430  switch (printVerbosity) {
431 
432  case 0: {
433 
434  // header for printing algorithms
435 
436  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
437  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
438  << "\nL1 Trigger Menu Name: " << m_triggerMenuName
439  << "\nL1 Trigger Menu Implementation: " << m_triggerMenuImplementation
440  << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
441  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined." << "\n\n"
442  << "Bit Number "
443  << std::right << std::setw(35) << "Algorithm Name" << " "
444  << std::right << std::setw(35) << "Algorithm Alias"
445  << std::endl;
446 
447  for (CItBit itBit = algoBitToAlgo.begin(); itBit != algoBitToAlgo.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  myCout
460  << "\nL1 Technical Triggers: " << nrDefinedTechTrig
461  << " technical triggers defined." << "\n\n" << std::endl;
462  if (nrDefinedTechTrig) {
463  myCout << "Bit Number " << " Technical trigger name " << std::endl;
464  }
465 
466  for (CItBit itBit = ttBitToTt.begin(); itBit != ttBitToTt.end(); itBit++) {
467 
468  int bitNumber = itBit->first;
469  std::string aName = (itBit->second)->algoName();
470  std::string aAlias = (itBit->second)->algoAlias();
471 
472  myCout << std::setw(6) << bitNumber << " "
473  << std::right << std::setw(35) << aName << " "
474  << std::right << std::setw(35) << aAlias
475  << std::endl;
476  }
477 */
478  }
479  break;
480 
481  case 1: {
482 
483  // header for printing algorithms
484 
485  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
486  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
487  << "\nL1 Trigger Menu Name: " << m_triggerMenuName
488  << "\nL1 Trigger Menu Implementation: " << m_triggerMenuImplementation
489  << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
490  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined." << "\n\n"
491  << "Bit Number "
492  << std::right << std::setw(35) << "Algorithm Name" << " "
493  << std::right << std::setw(35) << "Algorithm Alias"
494  << "\n Logical Expression \n"
495  << std::endl;
496 
497  for (CItBit itBit = algoBitToAlgo.begin(); itBit != algoBitToAlgo.end(); itBit++) {
498 
499  int bitNumber = itBit->first;
500  std::string aName = (itBit->second)->algoName();
501  std::string aAlias = (itBit->second)->algoAlias();
502  std::string aLogicalExpression = (itBit->second)->algoLogicalExpression();
503 
504  myCout << std::setw(6) << bitNumber << " "
505  << std::right << std::setw(35) << aName << " "
506  << std::right << std::setw(35) << aAlias
507  << "\n Logical expression: " << aLogicalExpression << "\n"
508  << std::endl;
509  }
510 /*
511  myCout
512  << "\nL1 Technical Triggers: " << nrDefinedTechTrig
513  << " technical triggers defined." << "\n\n" << std::endl;
514  if (nrDefinedTechTrig) {
515  myCout << "Bit Number " << " Technical trigger name " << std::endl;
516  }
517 
518  for (CItBit itBit = ttBitToTt.begin(); itBit != ttBitToTt.end(); itBit++) {
519 
520  int bitNumber = itBit->first;
521  std::string aName = (itBit->second)->algoName();
522 
523  myCout << std::setw(6) << bitNumber << " " << aName << std::endl;
524  }
525 */
526  }
527  break;
528 
529  case 2: {
530 
531  // header for printing algorithms
532 
533  myCout << "\n ********** L1 Trigger Menu - printing ********** \n"
534  << "\nL1 Trigger Menu Interface: " << m_triggerMenuInterface
535  << "\nL1 Trigger Menu Name: " << m_triggerMenuName
536  << "\nL1 Trigger Menu Implementation: " << m_triggerMenuImplementation
537  << "\nAssociated Scale DB Key: " << m_scaleDbKey << "\n\n"
538  << "\nL1 Physics Algorithms: " << nrDefinedAlgo << " algorithms defined." << "\n\n"
539  << std::endl;
540 
541  for (CItBit itBit = algoBitToAlgo.begin(); itBit != algoBitToAlgo.end(); itBit++) {
542  (itBit->second)->print(myCout);
543  }
544 
545 
546  myCout << "\nNumber of condition chips: " << m_conditionMap.size() << "\n"
547  << std::endl;
548 
549  int chipNr = -1;
550  int totalNrConditions = 0;
551 
552  for (std::vector<l1t::ConditionMap>::const_iterator
553  itCondOnChip = m_conditionMap.begin();
554  itCondOnChip != m_conditionMap.end(); itCondOnChip++) {
555 
556  chipNr++;
557 
558  int condMapSize = itCondOnChip->size();
559  totalNrConditions += condMapSize;
560 
561  myCout << "\nTotal number of conditions on condition chip " << chipNr
562  << ": " << condMapSize
563  << " conditions.\n" << std::endl;
564 
565  for (l1t::CItCond itCond = itCondOnChip->begin(); itCond != itCondOnChip->end();
566  itCond++) {
567 
568  (itCond->second)->print(myCout);
569 
570  }
571 
572  }
573 
574  myCout << "\nTotal number of conditions on all condition chips: "
575  << totalNrConditions << "\n"
576  << std::endl;
577 /*
578  myCout
579  << "\nL1 Technical Triggers: " << nrDefinedTechTrig
580  << " technical triggers defined." << "\n\n" << std::endl;
581  if (nrDefinedTechTrig) {
582  myCout << "Bit Number " << " Technical trigger name " << std::endl;
583  }
584 
585  for (CItBit itBit = ttBitToTt.begin(); itBit != ttBitToTt.end(); itBit++) {
586 
587  int bitNumber = itBit->first;
588  std::string aName = (itBit->second)->algoName();
589 
590  myCout << std::setw(6) << bitNumber << " " << aName << std::endl;
591  }
592 */
593 
594  }
595  break;
596 
597  default: {
598  myCout << "\n ********** L1 Trigger Menu - printing ********** \n\n"
599  << "Verbosity level: " << printVerbosity << " not implemented.\n\n"
600  << std::endl;
601  }
602  break;
603  }
604 
605 }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:235
ConditionMap::const_iterator CItCond
iterators through map containing the conditions
AlgorithmMap::const_iterator CItAlgo
iterators through map containing the algorithms
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
void print(std::ostream &, int &) const
Definition: TriggerMenu.cc:400
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
void TriggerMenu::setCorCaloTemplate ( const std::vector< std::vector< CaloTemplate > > &  corCaloTempl)

Definition at line 368 of file TriggerMenu.cc.

References m_corCaloTemplate.

369  {
370 
371  m_corCaloTemplate = corCaloTempl;
372 }
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:247
void TriggerMenu::setCorEnergySumTemplate ( const std::vector< std::vector< EnergySumTemplate > > &  corEnergySumTempl)

Definition at line 374 of file TriggerMenu.cc.

References m_corEnergySumTemplate.

375  {
376 
377  m_corEnergySumTemplate = corEnergySumTempl;
378 }
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:248
void TriggerMenu::setCorMuonTemplate ( const std::vector< std::vector< MuonTemplate > > &  corMuonTempl)

Definition at line 362 of file TriggerMenu.cc.

References m_corMuonTemplate.

363  {
364 
365  m_corMuonTemplate = corMuonTempl;
366 }
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:246
void TriggerMenu::setGtAlgorithmAliasMap ( const l1t::AlgorithmMap algoMap)

Definition at line 388 of file TriggerMenu.cc.

References m_algorithmAliasMap.

388  {
389  m_algorithmAliasMap = algoMap;
390 }
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:254
void TriggerMenu::setGtAlgorithmMap ( const l1t::AlgorithmMap algoMap)

Definition at line 383 of file TriggerMenu.cc.

References m_algorithmMap.

383  {
384  m_algorithmMap = algoMap;
385 }
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:251
void TriggerMenu::setGtConditionMap ( const std::vector< l1t::ConditionMap > &  condMap)

Definition at line 161 of file TriggerMenu.cc.

References m_conditionMap.

161  {
162  m_conditionMap = condMap;
163 }
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:225
void TriggerMenu::setGtScaleDbKey ( const std::string &  scaleKey)

Definition at line 319 of file TriggerMenu.cc.

References m_scaleDbKey.

319  {
320  m_scaleDbKey = scaleKey;
321 }
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:235
void TriggerMenu::setGtScales ( const l1t::L1TGlobalScales scales)

Definition at line 324 of file TriggerMenu.cc.

References m_gtScales.

324  {
325  m_gtScales = scales;
326 }
l1t::L1TGlobalScales m_gtScales
map containing the technical triggers
Definition: TriggerMenu.h:260
void TriggerMenu::setGtTriggerMenuImplementation ( const std::string &  menuImplementation)

Definition at line 314 of file TriggerMenu.cc.

References m_triggerMenuImplementation.

314  {
315  m_triggerMenuImplementation = menuImplementation;
316 }
std::string m_triggerMenuImplementation
Definition: TriggerMenu.h:232
void TriggerMenu::setGtTriggerMenuInterface ( const std::string &  menuInterface)

Definition at line 306 of file TriggerMenu.cc.

References m_triggerMenuInterface.

306  {
307  m_triggerMenuInterface = menuInterface;
308 }
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:230
void TriggerMenu::setGtTriggerMenuName ( const std::string &  menuName)

Definition at line 310 of file TriggerMenu.cc.

References m_triggerMenuName.

310  {
311  m_triggerMenuName = menuName;
312 }
std::string m_triggerMenuName
Definition: TriggerMenu.h:231
void TriggerMenu::setVecCaloTemplate ( const std::vector< std::vector< CaloTemplate > > &  vecCaloTempl)

Definition at line 335 of file TriggerMenu.cc.

References m_vecCaloTemplate.

336  {
337 
338  m_vecCaloTemplate = vecCaloTempl;
339 }
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:240
void TriggerMenu::setVecCorrelationTemplate ( const std::vector< std::vector< CorrelationTemplate > > &  vecCorrelationTempl)

Definition at line 355 of file TriggerMenu.cc.

References m_vecCorrelationTemplate.

356  {
357 
358  m_vecCorrelationTemplate = vecCorrelationTempl;
359 }
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:245
void TriggerMenu::setVecEnergySumTemplate ( const std::vector< std::vector< EnergySumTemplate > > &  vecEnergySumTempl)

Definition at line 341 of file TriggerMenu.cc.

References m_vecEnergySumTemplate.

342  {
343 
344  m_vecEnergySumTemplate = vecEnergySumTempl;
345 }
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:241
void TriggerMenu::setVecExternalTemplate ( const std::vector< std::vector< ExternalTemplate > > &  vecExternalTempl)

Definition at line 348 of file TriggerMenu.cc.

References m_vecExternalTemplate.

349  {
350 
351  m_vecExternalTemplate = vecExternalTempl;
352 }
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:243
void TriggerMenu::setVecMuonTemplate ( const std::vector< std::vector< MuonTemplate > > &  vecMuonTempl)

Definition at line 329 of file TriggerMenu.cc.

References m_vecMuonTemplate.

330  {
331 
332  m_vecMuonTemplate = vecMuonTempl;
333 }
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:239
const std::vector<std::vector<CaloTemplate> >& TriggerMenu::vecCaloTemplate ( ) const
inline

Definition at line 119 of file TriggerMenu.h.

References m_vecCaloTemplate.

119  {
120  return m_vecCaloTemplate;
121  }
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:240
const std::vector<std::vector<CorrelationTemplate> >& TriggerMenu::vecCorrelationTemplate ( ) const
inline

Definition at line 147 of file TriggerMenu.h.

References m_vecCorrelationTemplate.

147  {
148 
150  }
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:245
const std::vector<std::vector<EnergySumTemplate> >& TriggerMenu::vecEnergySumTemplate ( ) const
inline

Definition at line 127 of file TriggerMenu.h.

References m_vecEnergySumTemplate.

127  {
128 
129  return m_vecEnergySumTemplate;
130  }
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:241
const std::vector<std::vector<ExternalTemplate> >& TriggerMenu::vecExternalTemplate ( ) const
inline

Definition at line 137 of file TriggerMenu.h.

References m_vecExternalTemplate.

137  {
138 
139  return m_vecExternalTemplate;
140  }
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:243
const std::vector<std::vector<MuonTemplate> >& TriggerMenu::vecMuonTemplate ( ) const
inline

get / set the vectors containing the conditions

Definition at line 112 of file TriggerMenu.h.

References m_vecMuonTemplate.

112  {
113  return m_vecMuonTemplate;
114  }
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:239

Member Data Documentation

l1t::AlgorithmMap TriggerMenu::m_algorithmAliasMap
private

map containing the physics algorithms (by alias)

Definition at line 254 of file TriggerMenu.h.

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

l1t::AlgorithmMap TriggerMenu::m_algorithmMap
private

map containing the physics algorithms (by name)

Definition at line 251 of file TriggerMenu.h.

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

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

map containing the conditions (per condition chip) - transient

Definition at line 225 of file TriggerMenu.h.

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

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

Definition at line 247 of file TriggerMenu.h.

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

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

Definition at line 246 of file TriggerMenu.h.

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

l1t::L1TGlobalScales TriggerMenu::m_gtScales
private

map containing the technical triggers

Definition at line 260 of file TriggerMenu.h.

Referenced by gtScales(), and setGtScales().

std::string TriggerMenu::m_scaleDbKey
private

menu associated scale key

Definition at line 235 of file TriggerMenu.h.

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

std::string TriggerMenu::m_triggerMenuImplementation
private
std::string TriggerMenu::m_triggerMenuInterface
private

menu names

Definition at line 230 of file TriggerMenu.h.

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

std::string TriggerMenu::m_triggerMenuName
private

Definition at line 231 of file TriggerMenu.h.

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

std::vector<std::vector<CaloTemplate> > TriggerMenu::m_vecCaloTemplate
private
std::vector<std::vector<CorrelationTemplate> > TriggerMenu::m_vecCorrelationTemplate
private
std::vector<std::vector<EnergySumTemplate> > TriggerMenu::m_vecEnergySumTemplate
private
std::vector<std::vector<ExternalTemplate> > TriggerMenu::m_vecExternalTemplate
private
std::vector<std::vector<MuonTemplate> > TriggerMenu::m_vecMuonTemplate
private

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

Definition at line 239 of file TriggerMenu.h.

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