CMS 3D CMS Logo

L1GtTriggerMenu.h
Go to the documentation of this file.
1 #ifndef CondFormats_L1TObjects_L1GtTriggerMenu_h
2 #define CondFormats_L1TObjects_L1GtTriggerMenu_h
3 
20 // system include files
22 
23 #include <string>
24 #include <vector>
25 #include <map>
26 
27 #include <iosfwd>
28 
29 // user include files
31 
42 
43 // forward declarations
44 class L1GtCondition;
45 class L1GtAlgorithm;
46 
47 // class declaration
49 {
50 
51 public:
52 
53  // constructor
55 
56  L1GtTriggerMenu(const std::string&, const unsigned int numberConditionChips,
57  const std::vector<std::vector<L1GtMuonTemplate> >&,
58  const std::vector<std::vector<L1GtCaloTemplate> >&,
59  const std::vector<std::vector<L1GtEnergySumTemplate> >&,
60  const std::vector<std::vector<L1GtJetCountsTemplate> >&,
61  const std::vector<std::vector<L1GtCastorTemplate> >&,
62  const std::vector<std::vector<L1GtHfBitCountsTemplate> >&,
63  const std::vector<std::vector<L1GtHfRingEtSumsTemplate> >&,
64  const std::vector<std::vector<L1GtBptxTemplate> >&,
65  const std::vector<std::vector<L1GtExternalTemplate> >&,
66  const std::vector<std::vector<L1GtCorrelationTemplate> >&,
67  const std::vector<std::vector<L1GtMuonTemplate> >&,
68  const std::vector<std::vector<L1GtCaloTemplate> >&,
69  const std::vector<std::vector<L1GtEnergySumTemplate> >&
70  );
71 
72  // copy constructor
74 
75  // destructor
76  virtual ~L1GtTriggerMenu();
77 
78  // assignment operator
80 
81 public:
82 
84  inline const std::vector<ConditionMap>& gtConditionMap() const {
85  return m_conditionMap;
86  }
87 
88  void setGtConditionMap(const std::vector<ConditionMap>&);
89  void buildGtConditionMap();
90 
92  inline const std::string& gtTriggerMenuInterface() const {
94  }
95 
97 
98  //
99  inline const std::string& gtTriggerMenuName() const {
100  return m_triggerMenuName;
101  }
102 
103  void setGtTriggerMenuName(const std::string&);
104 
105  //
106  inline const std::string& gtTriggerMenuImplementation() const {
108  }
109 
111 
113  inline const std::string& gtScaleDbKey() const {
114  return m_scaleDbKey;
115  }
116 
117  void setGtScaleDbKey(const std::string&);
118 
120  inline const std::vector<std::vector<L1GtMuonTemplate> >& vecMuonTemplate() const {
121  return m_vecMuonTemplate;
122  }
123 
124  void setVecMuonTemplate(const std::vector<std::vector<L1GtMuonTemplate> >&);
125 
126  //
127  inline const std::vector<std::vector<L1GtCaloTemplate> >& vecCaloTemplate() const {
128  return m_vecCaloTemplate;
129  }
130 
131  void setVecCaloTemplate(const std::vector<std::vector<L1GtCaloTemplate> >&);
132 
133  //
134  inline const std::vector<std::vector<L1GtEnergySumTemplate> >&
136 
137  return m_vecEnergySumTemplate;
138  }
139 
141  const std::vector<std::vector<L1GtEnergySumTemplate> >&);
142 
143  //
144  inline const std::vector<std::vector<L1GtJetCountsTemplate> >&
146 
147  return m_vecJetCountsTemplate;
148  }
149 
151  const std::vector<std::vector<L1GtJetCountsTemplate> >&);
152 
153  //
154  inline const std::vector<std::vector<L1GtCastorTemplate> >&
156 
157  return m_vecCastorTemplate;
158  }
159 
161  const std::vector<std::vector<L1GtCastorTemplate> >&);
162 
163  //
164  inline const std::vector<std::vector<L1GtHfBitCountsTemplate> >&
166 
168  }
169 
171  const std::vector<std::vector<L1GtHfBitCountsTemplate> >&);
172 
173  //
174  inline const std::vector<std::vector<L1GtHfRingEtSumsTemplate> >&
176 
178  }
179 
181  const std::vector<std::vector<L1GtHfRingEtSumsTemplate> >&);
182 
183  //
184  inline const std::vector<std::vector<L1GtBptxTemplate> >&
185  vecBptxTemplate() const {
186 
187  return m_vecBptxTemplate;
188  }
189 
190  void setVecBptxTemplate(
191  const std::vector<std::vector<L1GtBptxTemplate> >&);
192 
193  //
194 
195  inline const std::vector<std::vector<L1GtExternalTemplate> >&
197 
198  return m_vecExternalTemplate;
199  }
200 
202  const std::vector<std::vector<L1GtExternalTemplate> >&);
203 
204  //
205  inline const std::vector<std::vector<L1GtCorrelationTemplate> >&
207 
209  }
210 
212  const std::vector<std::vector<L1GtCorrelationTemplate> >&);
213 
214  //
215  inline const std::vector<std::vector<L1GtMuonTemplate> >& corMuonTemplate() const {
216  return m_corMuonTemplate;
217  }
218 
219  void setCorMuonTemplate(const std::vector<std::vector<L1GtMuonTemplate> >&);
220 
221  //
222  inline const std::vector<std::vector<L1GtCaloTemplate> >& corCaloTemplate() const {
223  return m_corCaloTemplate;
224  }
225 
226  void setCorCaloTemplate(const std::vector<std::vector<L1GtCaloTemplate> >&);
227 
228  // get / set the vectors containing the conditions for correlation templates
229  //
230  inline const std::vector<std::vector<L1GtEnergySumTemplate> >&
232 
233  return m_corEnergySumTemplate;
234  }
235 
237  const std::vector<std::vector<L1GtEnergySumTemplate> >&);
238 
239 
241  inline const AlgorithmMap& gtAlgorithmMap() const {
242  return m_algorithmMap;
243  }
244 
245  void setGtAlgorithmMap(const AlgorithmMap&);
246 
248  inline const AlgorithmMap& gtAlgorithmAliasMap() const {
249  return m_algorithmAliasMap;
250  }
251 
253 
255  inline const AlgorithmMap& gtTechnicalTriggerMap() const {
256  return m_technicalTriggerMap;
257  }
258 
260 
263  void print(std::ostream&, int&) const;
264 
265 public:
266 
269  const bool gtAlgorithmResult(const std::string& algName,
270  const std::vector<bool>& decWord) const;
271 
272 private:
273 
275  std::vector<ConditionMap> m_conditionMap COND_TRANSIENT;
276 
277 private:
278 
283 
286 
289  std::vector<std::vector<L1GtMuonTemplate> > m_vecMuonTemplate;
290  std::vector<std::vector<L1GtCaloTemplate> > m_vecCaloTemplate;
291  std::vector<std::vector<L1GtEnergySumTemplate> > m_vecEnergySumTemplate;
292  std::vector<std::vector<L1GtJetCountsTemplate> > m_vecJetCountsTemplate;
293  std::vector<std::vector<L1GtCastorTemplate> > m_vecCastorTemplate;
294  std::vector<std::vector<L1GtHfBitCountsTemplate> > m_vecHfBitCountsTemplate;
295  std::vector<std::vector<L1GtHfRingEtSumsTemplate> > m_vecHfRingEtSumsTemplate;
296  std::vector<std::vector<L1GtBptxTemplate> > m_vecBptxTemplate;
297  std::vector<std::vector<L1GtExternalTemplate> > m_vecExternalTemplate;
298 
299  std::vector<std::vector<L1GtCorrelationTemplate> > m_vecCorrelationTemplate;
300  std::vector<std::vector<L1GtMuonTemplate> > m_corMuonTemplate;
301  std::vector<std::vector<L1GtCaloTemplate> > m_corCaloTemplate;
302  std::vector<std::vector<L1GtEnergySumTemplate> > m_corEnergySumTemplate;
303 
306 
309 
312 
313 
314 
316 };
317 
318 #endif /*CondFormats_L1TObjects_L1GtTriggerMenu_h*/
std::vector< std::vector< L1GtBptxTemplate > > m_vecBptxTemplate
const std::string & gtTriggerMenuName() const
AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
std::vector< std::vector< L1GtCaloTemplate > > m_vecCaloTemplate
void setGtScaleDbKey(const std::string &)
std::vector< std::vector< L1GtMuonTemplate > > m_vecMuonTemplate
std::vector< std::vector< L1GtHfBitCountsTemplate > > m_vecHfBitCountsTemplate
const std::vector< std::vector< L1GtHfBitCountsTemplate > > & vecHfBitCountsTemplate() const
const std::vector< std::vector< L1GtExternalTemplate > > & vecExternalTemplate() const
L1GtTriggerMenu & operator=(const L1GtTriggerMenu &)
void setGtAlgorithmMap(const AlgorithmMap &)
std::vector< std::vector< L1GtMuonTemplate > > m_corMuonTemplate
std::map< std::string, L1GtAlgorithm > AlgorithmMap
map containing the algorithms
void setCorCaloTemplate(const std::vector< std::vector< L1GtCaloTemplate > > &)
const std::vector< std::vector< L1GtCorrelationTemplate > > & vecCorrelationTemplate() const
void setGtTechnicalTriggerMap(const AlgorithmMap &)
void setGtTriggerMenuInterface(const std::string &)
const std::vector< std::vector< L1GtJetCountsTemplate > > & vecJetCountsTemplate() const
const std::vector< std::vector< L1GtBptxTemplate > > & vecBptxTemplate() const
std::vector< ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
void setVecHfBitCountsTemplate(const std::vector< std::vector< L1GtHfBitCountsTemplate > > &)
const std::string & gtTriggerMenuImplementation() const
void setVecCastorTemplate(const std::vector< std::vector< L1GtCastorTemplate > > &)
const std::vector< ConditionMap > & gtConditionMap() const
get / set / build the condition maps
void setVecCaloTemplate(const std::vector< std::vector< L1GtCaloTemplate > > &)
void setGtAlgorithmAliasMap(const AlgorithmMap &)
const std::vector< std::vector< L1GtEnergySumTemplate > > & corEnergySumTemplate() const
void setVecBptxTemplate(const std::vector< std::vector< L1GtBptxTemplate > > &)
void setGtConditionMap(const std::vector< ConditionMap > &)
std::vector< std::vector< L1GtJetCountsTemplate > > m_vecJetCountsTemplate
void setVecCorrelationTemplate(const std::vector< std::vector< L1GtCorrelationTemplate > > &)
std::vector< std::vector< L1GtCastorTemplate > > m_vecCastorTemplate
std::string m_scaleDbKey
menu associated scale key
void print(std::ostream &, int &) const
void setGtTriggerMenuImplementation(const std::string &)
void setVecJetCountsTemplate(const std::vector< std::vector< L1GtJetCountsTemplate > > &)
const bool gtAlgorithmResult(const std::string &algName, const std::vector< bool > &decWord) const
void setCorMuonTemplate(const std::vector< std::vector< L1GtMuonTemplate > > &)
const std::string & gtScaleDbKey() const
menu associated scale key
std::string m_triggerMenuName
void setCorEnergySumTemplate(const std::vector< std::vector< L1GtEnergySumTemplate > > &)
void setVecMuonTemplate(const std::vector< std::vector< L1GtMuonTemplate > > &)
void setVecEnergySumTemplate(const std::vector< std::vector< L1GtEnergySumTemplate > > &)
virtual ~L1GtTriggerMenu()
const std::vector< std::vector< L1GtMuonTemplate > > & corMuonTemplate() const
const std::vector< std::vector< L1GtCaloTemplate > > & corCaloTemplate() const
std::vector< std::vector< L1GtCaloTemplate > > m_corCaloTemplate
std::vector< std::vector< L1GtEnergySumTemplate > > m_vecEnergySumTemplate
const std::string & gtTriggerMenuInterface() const
get / set the trigger menu names
#define COND_TRANSIENT
Definition: Serializable.h:61
const std::vector< std::vector< L1GtCastorTemplate > > & vecCastorTemplate() const
void setGtTriggerMenuName(const std::string &)
std::vector< std::vector< L1GtExternalTemplate > > m_vecExternalTemplate
std::vector< std::vector< L1GtHfRingEtSumsTemplate > > m_vecHfRingEtSumsTemplate
std::vector< std::vector< L1GtEnergySumTemplate > > m_corEnergySumTemplate
const std::vector< std::vector< L1GtHfRingEtSumsTemplate > > & vecHfRingEtSumsTemplate() const
#define COND_SERIALIZABLE
Definition: Serializable.h:38
const std::vector< std::vector< L1GtCaloTemplate > > & vecCaloTemplate() const
const std::vector< std::vector< L1GtMuonTemplate > > & vecMuonTemplate() const
get / set the vectors containing the conditions
const AlgorithmMap & gtAlgorithmMap() const
get / set the algorithm map (by name)
AlgorithmMap m_technicalTriggerMap
map containing the technical triggers
const AlgorithmMap & gtTechnicalTriggerMap() const
get / set the technical trigger map
const AlgorithmMap & gtAlgorithmAliasMap() const
get / set the algorithm map (by alias)
std::vector< std::vector< L1GtCorrelationTemplate > > m_vecCorrelationTemplate
const std::vector< std::vector< L1GtEnergySumTemplate > > & vecEnergySumTemplate() const
std::string m_triggerMenuImplementation
void setVecExternalTemplate(const std::vector< std::vector< L1GtExternalTemplate > > &)
AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
void setVecHfRingEtSumsTemplate(const std::vector< std::vector< L1GtHfRingEtSumsTemplate > > &)
std::string m_triggerMenuInterface
menu names