CMS 3D CMS Logo

CorrelationWithOverlapRemovalTemplate.h
Go to the documentation of this file.
1 #ifndef L1Trigger_L1TGlobal_CorrelationWithOverlapRemovalTemplate_h
2 #define L1Trigger_L1TGlobal_CorrelationWithOverlapRemovalTemplate_h
3 
21 // system include files
22 #include <string>
23 #include <iosfwd>
24 
25 #include <boost/cstdint.hpp>
26 
27 // user include files
28 
29 // base class
31 
33 // forward declarations
34 
35 // class declaration
37 {
38 
39 public:
40 
44 
47 
53  const int, const int, const int);
54 
57 
60 
63 
64 public:
65 
68  {
69 
70  // Cut values in hardware
71  long long minEtaCutValue;
72  long long maxEtaCutValue;
73  unsigned int precEtaCut;
74 
75  long long minPhiCutValue;
76  long long maxPhiCutValue;
77  unsigned int precPhiCut;
78 
79  long long minDRCutValue;
80  long long maxDRCutValue;
81 
82  unsigned int precDRCut;
83 
84  long long minMassCutValue;
85  long long maxMassCutValue;
86  unsigned int precMassCut;
87 
88  long long minTBPTCutValue;
89  long long maxTBPTCutValue;
90  unsigned int precTBPTCut;
91 
95 
99 
103 
104  //Requirement on charge of legs (currently only Mu-Mu).
105  unsigned int chargeCorrelation;
106 
108 
109  };
110 
111 
112 public:
113 
116  return m_cond0Category;
117  }
118 
120  return m_cond1Category;
121  }
122 
124  return m_cond2Category;
125  }
126 
130 
132  inline const int cond0Index() const {
133  return m_cond0Index;
134  }
135 
136  inline const int cond1Index() const {
137  return m_cond1Index;
138  }
139 
140  inline const int cond2Index() const {
141  return m_cond2Index;
142  }
143 
144  void setCond0Index(const int&);
145  void setCond1Index(const int&);
146  void setCond2Index(const int&);
147 
149 
151  {
152  return &m_correlationParameter;
153  }
154 
156 
157 
159  void print(std::ostream& myCout) const override;
160 
162  friend std::ostream& operator<<(std::ostream&, const CorrelationWithOverlapRemovalTemplate&);
163 
164 
165 private:
166 
169 
170 
171 private:
172 
180 
181 };
182 
183 #endif
friend std::ostream & operator<<(std::ostream &, const CorrelationWithOverlapRemovalTemplate &)
output stream operator
const l1t::GtConditionCategory cond1Category() const
void print(std::ostream &myCout) const override
print the condition
CorrelationWithOverlapRemovalTemplate & operator=(const CorrelationWithOverlapRemovalTemplate &)
assign operator
void setCorrelationWithOverlapRemovalParameter(const CorrelationWithOverlapRemovalParameter &corrParameter)
GtConditionCategory
condition categories
void setCond0Category(const l1t::GtConditionCategory &)
CorrelationWithOverlapRemovalParameter m_correlationParameter
const l1t::GtConditionCategory cond0Category() const
get / set the category of the thre sub-conditions
void setCond2Category(const l1t::GtConditionCategory &)
const CorrelationWithOverlapRemovalParameter * correlationParameter() const
get / set correlation parameters
void copy(const CorrelationWithOverlapRemovalTemplate &cp)
copy function for copy constructor and operator=
const l1t::GtConditionCategory cond2Category() const
const int cond0Index() const
get / set the index of the two sub-conditions in the cor* vector from menu
void setCond1Category(const l1t::GtConditionCategory &)