CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1GtTriggerMenuLite.h
Go to the documentation of this file.
1 #ifndef DataFormats_L1GlobalTrigger_L1GtTriggerMenuLite_h
2 #define DataFormats_L1GlobalTrigger_L1GtTriggerMenuLite_h
3 
29 // system include files
30 #include <string>
31 #include <vector>
32 #include <map>
33 
34 #include <iosfwd>
35 
36 // user include files
37 
38 
39 // forward declarations
40 
41 // class declaration
43 
44 public:
45 
47  typedef std::map<unsigned int, std::string> L1TriggerMap;
48 
50  typedef L1TriggerMap::const_iterator CItL1Trig;
51  typedef L1TriggerMap::iterator ItL1Trig;
52 
53 public:
54 
57 
58  L1GtTriggerMenuLite(const std::string&, const L1TriggerMap&,
59  const L1TriggerMap&, const L1TriggerMap&,
60  const std::vector<unsigned int>&, const std::vector<unsigned int>&,
61  const std::vector<std::vector<int> >&,
62  const std::vector<std::vector<int> >&);
63 
66 
67  // destructor
68  virtual ~L1GtTriggerMenuLite();
69 
72 
74  bool operator==(const L1GtTriggerMenuLite&) const;
75 
77  bool operator!=(const L1GtTriggerMenuLite&) const;
78 
80  bool isProductEqual(const L1GtTriggerMenuLite&) const;
81 
82 public:
83 
85  inline const std::string& gtTriggerMenuInterface() const {
87  }
88 
89  void setGtTriggerMenuInterface(const std::string&);
90 
91  //
92  inline const std::string& gtTriggerMenuName() const {
93  return m_triggerMenuName;
94  }
95 
96  void setGtTriggerMenuName(const std::string&);
97 
98  //
99  inline const std::string& gtTriggerMenuImplementation() const {
101  }
102 
103  void setGtTriggerMenuImplementation(const std::string&);
104 
106  inline const std::string& gtScaleDbKey() const {
107  return m_scaleDbKey;
108  }
109 
110  void setGtScaleDbKey(const std::string&);
111 
113  inline const L1TriggerMap& gtAlgorithmMap() const {
114  return m_algorithmMap;
115  }
116 
117  void setGtAlgorithmMap(const L1TriggerMap&);
118 
120  inline const L1TriggerMap& gtAlgorithmAliasMap() const {
121  return m_algorithmAliasMap;
122  }
123 
125 
127  inline const L1TriggerMap& gtTechnicalTriggerMap() const {
128  return m_technicalTriggerMap;
129  }
130 
132 
134  inline const std::vector<unsigned int>& gtTriggerMaskAlgoTrig() const
135  {
136  return m_triggerMaskAlgoTrig;
137  }
138 
140  void setGtTriggerMaskAlgoTrig(const std::vector<unsigned int>&);
141 
142 
144  inline const std::vector<unsigned int>& gtTriggerMaskTechTrig() const
145  {
146  return m_triggerMaskTechTrig;
147  }
148 
150  void setGtTriggerMaskTechTrig(const std::vector<unsigned int>&);
151 
153  inline const std::vector<std::vector<int> >& gtPrescaleFactorsAlgoTrig() const
154  {
156  }
157 
158  void setGtPrescaleFactorsAlgoTrig(const std::vector<std::vector<int> >&);
159 
160  inline const std::vector<std::vector<int> >& gtPrescaleFactorsTechTrig() const
161  {
163  }
164 
165  void setGtPrescaleFactorsTechTrig(const std::vector<std::vector<int> >&);
166 
169  void print(std::ostream&, int&) const;
170 
172  friend std::ostream& operator<<(std::ostream&, const L1GtTriggerMenuLite&);
173 
174 public:
175 
177  const std::string* gtAlgorithmAlias(const unsigned int bitNumber, int& errorCode) const;
178 
181  const std::string* gtAlgorithmName(const unsigned int bitNumber, int& errorCode) const;
182  const std::string* gtTechTrigName(const unsigned int bitNumber, int& errorCode) const;
183 
186  const unsigned int gtBitNumber(const std::string& trigName, int& errorCode) const;
187 
190  const bool gtTriggerResult(const std::string& trigName,
191  const std::vector<bool>& decWord, int& errorCode) const;
192 
193 
194 private:
195 
198  std::string m_triggerMenuName;
200 
202  std::string m_scaleDbKey;
203 
206 
209 
212 
214  std::vector<unsigned int> m_triggerMaskAlgoTrig;
215 
217  std::vector<unsigned int> m_triggerMaskTechTrig;
218 
220  std::vector<std::vector<int> > m_prescaleFactorsAlgoTrig;
221  std::vector<std::vector<int> > m_prescaleFactorsTechTrig;
222 
223 
224 };
225 
226 #endif /*DataFormats_L1GlobalTrigger_L1GtTriggerMenuLite_h*/
void setGtTriggerMenuName(const std::string &)
void setGtPrescaleFactorsAlgoTrig(const std::vector< std::vector< int > > &)
const std::string * gtAlgorithmAlias(const unsigned int bitNumber, int &errorCode) const
get the alias for a physics algorithm with a given bit number
L1TriggerMap m_algorithmMap
map containing the physics algorithms (by name)
const std::vector< unsigned int > & gtTriggerMaskAlgoTrig() const
get the trigger mask for physics algorithms
L1TriggerMap::iterator ItL1Trig
const unsigned int gtBitNumber(const std::string &trigName, int &errorCode) const
const std::vector< std::vector< int > > & gtPrescaleFactorsAlgoTrig() const
get the prescale factors by reference / set the prescale factors
L1GtTriggerMenuLite()
constructor
std::string m_triggerMenuImplementation
std::string m_scaleDbKey
menu associated scale key
L1TriggerMap m_technicalTriggerMap
map containing the technical triggers
void setGtTriggerMenuInterface(const std::string &)
void setGtTriggerMaskTechTrig(const std::vector< unsigned int > &)
set the trigger mask for technical triggers
const std::string & gtTriggerMenuName() const
std::map< unsigned int, std::string > L1TriggerMap
map containing the physics algorithms or the technical triggers
bool isProductEqual(const L1GtTriggerMenuLite &) const
merge rule: test on isProductEqual
const std::string * gtTechTrigName(const unsigned int bitNumber, int &errorCode) const
std::vector< unsigned int > m_triggerMaskAlgoTrig
trigger mask for physics algorithms
const std::vector< unsigned int > & gtTriggerMaskTechTrig() const
get the trigger mask for technical triggers
void setGtTriggerMaskAlgoTrig(const std::vector< unsigned int > &)
set the trigger mask for physics algorithms
std::vector< std::vector< int > > m_prescaleFactorsAlgoTrig
prescale factors
const L1TriggerMap & gtAlgorithmAliasMap() const
get / set the algorithm map (by alias)
const bool gtTriggerResult(const std::string &trigName, const std::vector< bool > &decWord, int &errorCode) const
const std::vector< std::vector< int > > & gtPrescaleFactorsTechTrig() const
void print(std::ostream &, int &) const
void setGtAlgorithmAliasMap(const L1TriggerMap &)
L1TriggerMap::const_iterator CItL1Trig
iterators through map containing the physics algorithms or the technical triggers ...
std::vector< std::vector< int > > m_prescaleFactorsTechTrig
void setGtTriggerMenuImplementation(const std::string &)
void setGtPrescaleFactorsTechTrig(const std::vector< std::vector< int > > &)
void setGtScaleDbKey(const std::string &)
std::string m_triggerMenuInterface
menu names
friend std::ostream & operator<<(std::ostream &, const L1GtTriggerMenuLite &)
output stream operator
const L1TriggerMap & gtAlgorithmMap() const
get / set the algorithm map (by name)
bool operator==(const L1GtTriggerMenuLite &) const
equal operator
bool operator!=(const L1GtTriggerMenuLite &) const
unequal operator
const L1TriggerMap & gtTechnicalTriggerMap() const
get / set the technical trigger map
const std::string & gtTriggerMenuInterface() const
get / set the trigger menu names
const std::string & gtScaleDbKey() const
menu associated scale key
void setGtAlgorithmMap(const L1TriggerMap &)
std::vector< unsigned int > m_triggerMaskTechTrig
trigger mask for technical triggers
const std::string * gtAlgorithmName(const unsigned int bitNumber, int &errorCode) const
L1GtTriggerMenuLite & operator=(const L1GtTriggerMenuLite &)
assignment operator
void setGtTechnicalTriggerMap(const L1TriggerMap &)
const std::string & gtTriggerMenuImplementation() const
L1TriggerMap m_algorithmAliasMap
map containing the physics algorithms (by alias)