CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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
21 #include <string>
22 #include <vector>
23 #include <map>
24 
25 #include <iosfwd>
26 
27 // user include files
29 
40 
41 // forward declarations
42 class L1GtCondition;
43 class L1GtAlgorithm;
44 
45 // class declaration
47 {
48 
49 public:
50 
51  // constructor
53 
54  L1GtTriggerMenu(const std::string&, const unsigned int numberConditionChips,
55  const std::vector<std::vector<L1GtMuonTemplate> >&,
56  const std::vector<std::vector<L1GtCaloTemplate> >&,
57  const std::vector<std::vector<L1GtEnergySumTemplate> >&,
58  const std::vector<std::vector<L1GtJetCountsTemplate> >&,
59  const std::vector<std::vector<L1GtCastorTemplate> >&,
60  const std::vector<std::vector<L1GtHfBitCountsTemplate> >&,
61  const std::vector<std::vector<L1GtHfRingEtSumsTemplate> >&,
62  const std::vector<std::vector<L1GtBptxTemplate> >&,
63  const std::vector<std::vector<L1GtExternalTemplate> >&,
64  const std::vector<std::vector<L1GtCorrelationTemplate> >&,
65  const std::vector<std::vector<L1GtMuonTemplate> >&,
66  const std::vector<std::vector<L1GtCaloTemplate> >&,
67  const std::vector<std::vector<L1GtEnergySumTemplate> >&
68  );
69 
70  // copy constructor
72 
73  // destructor
74  virtual ~L1GtTriggerMenu();
75 
76  // assignment operator
78 
79 public:
80 
82  inline const std::vector<ConditionMap>& gtConditionMap() const {
83  return m_conditionMap;
84  }
85 
86  void setGtConditionMap(const std::vector<ConditionMap>&);
87  void buildGtConditionMap();
88 
90  inline const std::string& gtTriggerMenuInterface() const {
92  }
93 
95 
96  //
97  inline const std::string& gtTriggerMenuName() const {
98  return m_triggerMenuName;
99  }
100 
101  void setGtTriggerMenuName(const std::string&);
102 
103  //
104  inline const std::string& gtTriggerMenuImplementation() const {
106  }
107 
109 
111  inline const std::string& gtScaleDbKey() const {
112  return m_scaleDbKey;
113  }
114 
115  void setGtScaleDbKey(const std::string&);
116 
118  inline const std::vector<std::vector<L1GtMuonTemplate> >& vecMuonTemplate() const {
119  return m_vecMuonTemplate;
120  }
121 
122  void setVecMuonTemplate(const std::vector<std::vector<L1GtMuonTemplate> >&);
123 
124  //
125  inline const std::vector<std::vector<L1GtCaloTemplate> >& vecCaloTemplate() const {
126  return m_vecCaloTemplate;
127  }
128 
129  void setVecCaloTemplate(const std::vector<std::vector<L1GtCaloTemplate> >&);
130 
131  //
132  inline const std::vector<std::vector<L1GtEnergySumTemplate> >&
134 
135  return m_vecEnergySumTemplate;
136  }
137 
139  const std::vector<std::vector<L1GtEnergySumTemplate> >&);
140 
141  //
142  inline const std::vector<std::vector<L1GtJetCountsTemplate> >&
144 
145  return m_vecJetCountsTemplate;
146  }
147 
149  const std::vector<std::vector<L1GtJetCountsTemplate> >&);
150 
151  //
152  inline const std::vector<std::vector<L1GtCastorTemplate> >&
154 
155  return m_vecCastorTemplate;
156  }
157 
159  const std::vector<std::vector<L1GtCastorTemplate> >&);
160 
161  //
162  inline const std::vector<std::vector<L1GtHfBitCountsTemplate> >&
164 
166  }
167 
169  const std::vector<std::vector<L1GtHfBitCountsTemplate> >&);
170 
171  //
172  inline const std::vector<std::vector<L1GtHfRingEtSumsTemplate> >&
174 
176  }
177 
179  const std::vector<std::vector<L1GtHfRingEtSumsTemplate> >&);
180 
181  //
182  inline const std::vector<std::vector<L1GtBptxTemplate> >&
183  vecBptxTemplate() const {
184 
185  return m_vecBptxTemplate;
186  }
187 
188  void setVecBptxTemplate(
189  const std::vector<std::vector<L1GtBptxTemplate> >&);
190 
191  //
192 
193  inline const std::vector<std::vector<L1GtExternalTemplate> >&
195 
196  return m_vecExternalTemplate;
197  }
198 
200  const std::vector<std::vector<L1GtExternalTemplate> >&);
201 
202  //
203  inline const std::vector<std::vector<L1GtCorrelationTemplate> >&
205 
207  }
208 
210  const std::vector<std::vector<L1GtCorrelationTemplate> >&);
211 
212  //
213  inline const std::vector<std::vector<L1GtMuonTemplate> >& corMuonTemplate() const {
214  return m_corMuonTemplate;
215  }
216 
217  void setCorMuonTemplate(const std::vector<std::vector<L1GtMuonTemplate> >&);
218 
219  //
220  inline const std::vector<std::vector<L1GtCaloTemplate> >& corCaloTemplate() const {
221  return m_corCaloTemplate;
222  }
223 
224  void setCorCaloTemplate(const std::vector<std::vector<L1GtCaloTemplate> >&);
225 
226  // get / set the vectors containing the conditions for correlation templates
227  //
228  inline const std::vector<std::vector<L1GtEnergySumTemplate> >&
230 
231  return m_corEnergySumTemplate;
232  }
233 
235  const std::vector<std::vector<L1GtEnergySumTemplate> >&);
236 
237 
239  inline const AlgorithmMap& gtAlgorithmMap() const {
240  return m_algorithmMap;
241  }
242 
243  void setGtAlgorithmMap(const AlgorithmMap&);
244 
246  inline const AlgorithmMap& gtAlgorithmAliasMap() const {
247  return m_algorithmAliasMap;
248  }
249 
251 
253  inline const AlgorithmMap& gtTechnicalTriggerMap() const {
254  return m_technicalTriggerMap;
255  }
256 
258 
261  void print(std::ostream&, int&) const;
262 
263 public:
264 
267  const bool gtAlgorithmResult(const std::string& algName,
268  const std::vector<bool>& decWord) const;
269 
270 private:
271 
273  mutable std::vector<ConditionMap> m_conditionMap;
274 
275 private:
276 
281 
284 
287  std::vector<std::vector<L1GtMuonTemplate> > m_vecMuonTemplate;
288  std::vector<std::vector<L1GtCaloTemplate> > m_vecCaloTemplate;
289  std::vector<std::vector<L1GtEnergySumTemplate> > m_vecEnergySumTemplate;
290  std::vector<std::vector<L1GtJetCountsTemplate> > m_vecJetCountsTemplate;
291  std::vector<std::vector<L1GtCastorTemplate> > m_vecCastorTemplate;
292  std::vector<std::vector<L1GtHfBitCountsTemplate> > m_vecHfBitCountsTemplate;
293  std::vector<std::vector<L1GtHfRingEtSumsTemplate> > m_vecHfRingEtSumsTemplate;
294  std::vector<std::vector<L1GtBptxTemplate> > m_vecBptxTemplate;
295  std::vector<std::vector<L1GtExternalTemplate> > m_vecExternalTemplate;
296 
297  std::vector<std::vector<L1GtCorrelationTemplate> > m_vecCorrelationTemplate;
298  std::vector<std::vector<L1GtMuonTemplate> > m_corMuonTemplate;
299  std::vector<std::vector<L1GtCaloTemplate> > m_corCaloTemplate;
300  std::vector<std::vector<L1GtEnergySumTemplate> > m_corEnergySumTemplate;
301 
304 
307 
310 
311 
312 };
313 
314 #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
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
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