CMS 3D CMS Logo

TriggerMenu.h
Go to the documentation of this file.
1 #ifndef L1Trigger_L1TGlobal_TriggerMenu_h
2 #define L1Trigger_L1TGlobal_TriggerMenu_h
3 
21 // system include files
22 #include <string>
23 #include <vector>
24 #include <map>
25 
26 #include <iosfwd>
27 
28 // user include files
30 
32 
39 
40 // forward declarations
41 class GlobalCondition;
42 class L1GtAlgorithm;
43 class GlobalScales;
44 
45 // class declaration
46 class TriggerMenu {
47 public:
48  // constructor
49  TriggerMenu();
50 
51  TriggerMenu(const std::string&,
52  const unsigned int numberConditionChips,
53  const std::vector<std::vector<MuonTemplate> >&,
54  const std::vector<std::vector<CaloTemplate> >&,
55  const std::vector<std::vector<EnergySumTemplate> >&,
56  const std::vector<std::vector<ExternalTemplate> >&,
57  const std::vector<std::vector<CorrelationTemplate> >&,
58  const std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> >&,
59  const std::vector<std::vector<MuonTemplate> >&,
60  const std::vector<std::vector<CaloTemplate> >&,
61  const std::vector<std::vector<EnergySumTemplate> >&);
62 
63  // copy constructor
64  TriggerMenu(const TriggerMenu&);
65 
66  // destructor
67  virtual ~TriggerMenu();
68 
69  // assignment operator
71 
72 public:
74  inline const std::vector<l1t::ConditionMap>& gtConditionMap() const { return m_conditionMap; }
75 
76  void setGtConditionMap(const std::vector<l1t::ConditionMap>&);
77  void buildGtConditionMap();
78 
80  inline const std::string& gtTriggerMenuInterface() const { return m_triggerMenuInterface; }
81 
83 
84  //
85  inline const std::string& gtTriggerMenuName() const { return m_triggerMenuName; }
86 
87  void setGtTriggerMenuName(const std::string&);
88 
89  //
90  inline const unsigned long gtTriggerMenuUUID() const { return m_triggerMenuUUID; }
91 
92  void setGtTriggerMenuUUID(const unsigned long uuid);
93 
94  //
95  inline const unsigned long gtTriggerMenuImplementation() const { return m_triggerMenuImplementation; }
96 
97  void setGtTriggerMenuImplementation(const unsigned long);
98 
100  inline const std::string& gtScaleDbKey() const { return m_scaleDbKey; }
101 
102  void setGtScaleDbKey(const std::string&);
103 
105  inline const std::vector<std::vector<MuonTemplate> >& vecMuonTemplate() const { return m_vecMuonTemplate; }
106 
107  void setVecMuonTemplate(const std::vector<std::vector<MuonTemplate> >&);
108 
109  //
110  inline const std::vector<std::vector<CaloTemplate> >& vecCaloTemplate() const { return m_vecCaloTemplate; }
111 
112  void setVecCaloTemplate(const std::vector<std::vector<CaloTemplate> >&);
113 
114  //
115  inline const std::vector<std::vector<EnergySumTemplate> >& vecEnergySumTemplate() const {
116  return m_vecEnergySumTemplate;
117  }
118 
119  void setVecEnergySumTemplate(const std::vector<std::vector<EnergySumTemplate> >&);
120 
121  inline const std::vector<std::vector<ExternalTemplate> >& vecExternalTemplate() const {
122  return m_vecExternalTemplate;
123  }
124 
125  void setVecExternalTemplate(const std::vector<std::vector<ExternalTemplate> >&);
126 
127  //
128  inline const std::vector<std::vector<CorrelationTemplate> >& vecCorrelationTemplate() const {
130  }
131 
132  void setVecCorrelationTemplate(const std::vector<std::vector<CorrelationTemplate> >&);
133 
134  //
135  inline const std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> >&
138  }
139 
141  const std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> >&);
142 
143  //
144  inline const std::vector<std::vector<MuonTemplate> >& corMuonTemplate() const { return m_corMuonTemplate; }
145 
146  void setCorMuonTemplate(const std::vector<std::vector<MuonTemplate> >&);
147 
148  //
149  inline const std::vector<std::vector<CaloTemplate> >& corCaloTemplate() const { return m_corCaloTemplate; }
150 
151  void setCorCaloTemplate(const std::vector<std::vector<CaloTemplate> >&);
152 
153  // get / set the vectors containing the conditions for correlation templates
154  //
155  inline const std::vector<std::vector<EnergySumTemplate> >& corEnergySumTemplate() const {
156  return m_corEnergySumTemplate;
157  }
158 
159  void setCorEnergySumTemplate(const std::vector<std::vector<EnergySumTemplate> >&);
160 
162  inline const l1t::AlgorithmMap& gtAlgorithmMap() const { return m_algorithmMap; }
163 
165 
168 
170 
172  inline const l1t::GlobalScales& gtScales() const { return m_gtScales; }
173 
174  void setGtScales(const l1t::GlobalScales&);
175 
176  /*
178  inline const l1t::AlgorithmMap& gtTechnicalTriggerMap() const {
179  return m_technicalTriggerMap;
180  }
181 
182 // void setGtTechnicalTriggerMap(const l1t::AlgorithmMap&);
183 */
186  void print(std::ostream&, int&) const;
187 
188 public:
191  const bool gtAlgorithmResult(const std::string& algName, const std::vector<bool>& decWord) const;
192 
193 private:
195  std::vector<l1t::ConditionMap> m_conditionMap;
196 
197 private:
202 
203  unsigned long m_triggerMenuUUID;
204 
207 
210  std::vector<std::vector<MuonTemplate> > m_vecMuonTemplate;
211  std::vector<std::vector<CaloTemplate> > m_vecCaloTemplate;
212  std::vector<std::vector<EnergySumTemplate> > m_vecEnergySumTemplate;
213 
214  std::vector<std::vector<ExternalTemplate> > m_vecExternalTemplate;
215 
216  std::vector<std::vector<CorrelationTemplate> > m_vecCorrelationTemplate;
217  std::vector<std::vector<CorrelationWithOverlapRemovalTemplate> > m_vecCorrelationWithOverlapRemovalTemplate;
218  std::vector<std::vector<MuonTemplate> > m_corMuonTemplate;
219  std::vector<std::vector<CaloTemplate> > m_corCaloTemplate;
220  std::vector<std::vector<EnergySumTemplate> > m_corEnergySumTemplate;
221 
224 
227 
229  // l1t::AlgorithmMap m_technicalTriggerMap;
230 
231  // class containing the scales from the L1 Menu XML
233 };
234 
235 #endif /*L1Trigger_L1TGlobal_TriggerMenu_h*/
TriggerMenu::m_triggerMenuInterface
std::string m_triggerMenuInterface
menu names
Definition: TriggerMenu.h:199
TriggerMenu::gtScales
const l1t::GlobalScales & gtScales() const
get the scales
Definition: TriggerMenu.h:172
TriggerMenu::gtTriggerMenuInterface
const std::string & gtTriggerMenuInterface() const
get / set the trigger menu names
Definition: TriggerMenu.h:80
CorrelationWithOverlapRemovalTemplate.h
TriggerMenu::m_triggerMenuName
std::string m_triggerMenuName
Definition: TriggerMenu.h:200
TriggerMenu::vecEnergySumTemplate
const std::vector< std::vector< EnergySumTemplate > > & vecEnergySumTemplate() const
Definition: TriggerMenu.h:115
TriggerMenuFwd.h
TriggerMenu::m_vecExternalTemplate
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
Definition: TriggerMenu.h:214
TriggerMenu::m_corCaloTemplate
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
Definition: TriggerMenu.h:219
TriggerMenu::corCaloTemplate
const std::vector< std::vector< CaloTemplate > > & corCaloTemplate() const
Definition: TriggerMenu.h:149
TriggerMenu::vecExternalTemplate
const std::vector< std::vector< ExternalTemplate > > & vecExternalTemplate() const
Definition: TriggerMenu.h:121
TriggerMenu::setCorMuonTemplate
void setCorMuonTemplate(const std::vector< std::vector< MuonTemplate > > &)
Definition: TriggerMenu.cc:332
TriggerMenu::gtAlgorithmMap
const l1t::AlgorithmMap & gtAlgorithmMap() const
get / set the algorithm map (by name)
Definition: TriggerMenu.h:162
TriggerMenu::m_scaleDbKey
std::string m_scaleDbKey
menu associated scale key
Definition: TriggerMenu.h:206
TriggerMenu::setVecExternalTemplate
void setVecExternalTemplate(const std::vector< std::vector< ExternalTemplate > > &)
Definition: TriggerMenu.cc:318
TriggerMenu::setVecMuonTemplate
void setVecMuonTemplate(const std::vector< std::vector< MuonTemplate > > &)
Definition: TriggerMenu.cc:306
TriggerMenu::setCorEnergySumTemplate
void setCorEnergySumTemplate(const std::vector< std::vector< EnergySumTemplate > > &)
Definition: TriggerMenu.cc:340
TriggerMenu::setGtAlgorithmMap
void setGtAlgorithmMap(const l1t::AlgorithmMap &)
Definition: TriggerMenu.cc:345
TriggerMenu::m_corMuonTemplate
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
Definition: TriggerMenu.h:218
TriggerMenu::m_vecEnergySumTemplate
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
Definition: TriggerMenu.h:212
TriggerMenu::m_gtScales
l1t::GlobalScales m_gtScales
map containing the technical triggers
Definition: TriggerMenu.h:232
TriggerMenu::~TriggerMenu
virtual ~TriggerMenu()
Definition: TriggerMenu.cc:106
MuonTemplate.h
TriggerMenu::setVecEnergySumTemplate
void setVecEnergySumTemplate(const std::vector< std::vector< EnergySumTemplate > > &)
Definition: TriggerMenu.cc:314
createPayload.uuid
uuid
Definition: createPayload.py:391
TriggerMenu::gtTriggerMenuUUID
const unsigned long gtTriggerMenuUUID() const
Definition: TriggerMenu.h:90
TriggerMenu::gtTriggerMenuName
const std::string & gtTriggerMenuName() const
Definition: TriggerMenu.h:85
TriggerMenu::gtAlgorithmAliasMap
const l1t::AlgorithmMap & gtAlgorithmAliasMap() const
get / set the algorithm map (by alias)
Definition: TriggerMenu.h:167
ExternalTemplate.h
TriggerMenu::corMuonTemplate
const std::vector< std::vector< MuonTemplate > > & corMuonTemplate() const
Definition: TriggerMenu.h:144
TriggerMenu::setGtScales
void setGtScales(const l1t::GlobalScales &)
Definition: TriggerMenu.cc:303
TriggerMenu::m_vecMuonTemplate
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
Definition: TriggerMenu.h:210
TriggerMenu::buildGtConditionMap
void buildGtConditionMap()
Definition: TriggerMenu.cc:156
GlobalScales
TriggerMenu::setGtTriggerMenuName
void setGtTriggerMenuName(const std::string &)
Definition: TriggerMenu.cc:291
l1t::GlobalScales
Definition: GlobalScales.h:25
TriggerMenu::vecCorrelationTemplate
const std::vector< std::vector< CorrelationTemplate > > & vecCorrelationTemplate() const
Definition: TriggerMenu.h:128
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TriggerMenu::setGtScaleDbKey
void setGtScaleDbKey(const std::string &)
Definition: TriggerMenu.cc:300
TriggerMenu::m_triggerMenuUUID
unsigned long m_triggerMenuUUID
Definition: TriggerMenu.h:203
TriggerMenu::TriggerMenu
TriggerMenu()
Definition: TriggerMenu.cc:31
TriggerMenu::setVecCorrelationWithOverlapRemovalTemplate
void setVecCorrelationWithOverlapRemovalTemplate(const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > &)
Definition: TriggerMenu.cc:326
TriggerMenu::operator=
TriggerMenu & operator=(const TriggerMenu &)
Definition: TriggerMenu.cc:119
L1GtAlgorithm
Definition: L1GtAlgorithm.h:32
TriggerMenu::m_algorithmMap
l1t::AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
Definition: TriggerMenu.h:223
TriggerMenu::setGtTriggerMenuUUID
void setGtTriggerMenuUUID(const unsigned long uuid)
Definition: TriggerMenu.cc:297
TriggerMenu::m_vecCorrelationWithOverlapRemovalTemplate
std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > m_vecCorrelationWithOverlapRemovalTemplate
Definition: TriggerMenu.h:217
l1t::AlgorithmMap
std::map< std::string, GlobalAlgorithm > AlgorithmMap
map containing the algorithms
Definition: TriggerMenuFwd.h:32
TriggerMenu::corEnergySumTemplate
const std::vector< std::vector< EnergySumTemplate > > & corEnergySumTemplate() const
Definition: TriggerMenu.h:155
TriggerMenu::setVecCorrelationTemplate
void setVecCorrelationTemplate(const std::vector< std::vector< CorrelationTemplate > > &)
Definition: TriggerMenu.cc:322
TriggerMenu::m_triggerMenuImplementation
unsigned long m_triggerMenuImplementation
Definition: TriggerMenu.h:201
TriggerMenu::vecMuonTemplate
const std::vector< std::vector< MuonTemplate > > & vecMuonTemplate() const
get / set the vectors containing the conditions
Definition: TriggerMenu.h:105
TriggerMenu::setGtConditionMap
void setGtConditionMap(const std::vector< l1t::ConditionMap > &)
Definition: TriggerMenu.cc:153
TriggerMenu::gtConditionMap
const std::vector< l1t::ConditionMap > & gtConditionMap() const
get / set / build the condition maps
Definition: TriggerMenu.h:74
TriggerMenu::setGtTriggerMenuInterface
void setGtTriggerMenuInterface(const std::string &)
Definition: TriggerMenu.cc:287
TriggerMenu::gtAlgorithmResult
const bool gtAlgorithmResult(const std::string &algName, const std::vector< bool > &decWord) const
Definition: TriggerMenu.cc:540
TriggerMenu::setGtTriggerMenuImplementation
void setGtTriggerMenuImplementation(const unsigned long)
Definition: TriggerMenu.cc:293
CaloTemplate.h
TriggerMenu::gtScaleDbKey
const std::string & gtScaleDbKey() const
menu associated scale key
Definition: TriggerMenu.h:100
TriggerMenu::setGtAlgorithmAliasMap
void setGtAlgorithmAliasMap(const l1t::AlgorithmMap &)
Definition: TriggerMenu.cc:348
TriggerMenu::gtTriggerMenuImplementation
const unsigned long gtTriggerMenuImplementation() const
Definition: TriggerMenu.h:95
CorrelationTemplate.h
TriggerMenu::vecCaloTemplate
const std::vector< std::vector< CaloTemplate > > & vecCaloTemplate() const
Definition: TriggerMenu.h:110
TriggerMenu
Definition: TriggerMenu.h:46
EnergySumTemplate.h
GlobalScales.h
TriggerMenu::m_algorithmAliasMap
l1t::AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
Definition: TriggerMenu.h:226
TriggerMenu::setVecCaloTemplate
void setVecCaloTemplate(const std::vector< std::vector< CaloTemplate > > &)
Definition: TriggerMenu.cc:310
GlobalCondition
Definition: GlobalCondition.h:33
TriggerMenu::setCorCaloTemplate
void setCorCaloTemplate(const std::vector< std::vector< CaloTemplate > > &)
Definition: TriggerMenu.cc:336
TriggerMenu::vecCorrelationWithOverlapRemovalTemplate
const std::vector< std::vector< CorrelationWithOverlapRemovalTemplate > > & vecCorrelationWithOverlapRemovalTemplate() const
Definition: TriggerMenu.h:136
TriggerMenu::m_vecCorrelationTemplate
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
Definition: TriggerMenu.h:216
TriggerMenu::print
void print(std::ostream &, int &) const
Definition: TriggerMenu.cc:358
TriggerMenu::m_conditionMap
std::vector< l1t::ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
Definition: TriggerMenu.h:195
TriggerMenu::m_vecCaloTemplate
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
Definition: TriggerMenu.h:211
TriggerMenu::m_corEnergySumTemplate
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
Definition: TriggerMenu.h:220