CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EtaDepResElement.h
Go to the documentation of this file.
1 //
2 // $Id: EtaDepResElement.h,v 1.1 2011/05/26 09:46:53 mseidel Exp $
3 //
4 // CMSSW File : interface/EtaDepResElement.h
5 // Original Author : Haryo Sumowidagdo <Suharyo.Sumowidagdo@cern.ch>
6 // Purpose : Hold on to an element of eta-dependent resolution.
7 // A class which holds to the information of resolution
8 // and the eta range in which the resolution is valid.
9 //
10 
25 #ifndef HITFIT_ETA_DEP_RES_ELEMENT
26 #define HITFIT_ETA_DEP_RES_ELEMENT
27 
28 #include <iostream>
29 
32 
33 
34 namespace hitfit {
35 
64 
65 private:
66 
70  double _EtaMin;
71 
75  double _EtaMax;
76 
84  void SetEta(double eta1,double eta2);
85 
90 
91 public:
92 
105  EtaDepResElement(double eta1, double eta2,
106  const Vector_Resolution& res);
107 
121  EtaDepResElement(double eta1, double eta2,
122  std::string res);
123 
141  EtaDepResElement(double eta1, double eta2,
142  const Resolution& p_res,
143  const Resolution& eta_res,
144  const Resolution& phi_res,
145  bool use_et);
146 
151 
152  friend bool operator < (const EtaDepResElement& a,
153  const EtaDepResElement& b) ;
154 
158  const double EtaMin() const;
159 
163  const double EtaMax() const;
164 
175  bool IsOverlap(const EtaDepResElement& e) const ;
176 
187  bool IsNotOverlap(const EtaDepResElement& e) const ;
188 
198  bool IsInInterval(const double& eta) const ;
199 
200 
206  bool IsOnEdge(const double& eta) const;
207 
220  bool IsOnEdge(const EtaDepResElement& e) const;
221 
228  const Vector_Resolution GetResolution() const;
229 
237  friend std::ostream& operator<<(std::ostream& s,
238  const EtaDepResElement& e);
239 
243  static const int InverseEtaPrecision = 1000000; // Precision of 1/1000000
244 
245 };
246 
247 } // namespace hitfit
248 #endif // not #ifndef HITFIT_ETA_DEP_RES_ELEMENT
bool IsOnEdge(const double &eta) const
Check if an value is at the edge/boundary of this instance&#39;s valid range.
Calculate and represent resolution for a vector of momentum , pseudorapidity , and azimuthal angle ...
const Vector_Resolution GetResolution() const
Access the resolution.
Calculate and represent resolution for a physical quantity.
Definition: Resolution.h:103
Represent a resolution and an range in which the resolution is valid.
T eta() const
static const int InverseEtaPrecision
Constant, the inverse of precision expected.
Vector_Resolution _Vector_Resolution
EtaDepResElement(double eta1, double eta2, const Vector_Resolution &res)
Construct an instance of EtaDepResElement from the lower limit, upper limit, and the resolution...
bool IsOverlap(const EtaDepResElement &e) const
Check if this instance has overlapping range with another instance of EtaDepResElement.
double b
Definition: hdecay.h:120
Define a concrete interface for getting parameter settings from an ASCII text file.
void SetEta(double eta1, double eta2)
friend bool operator<(const EtaDepResElement &a, const EtaDepResElement &b)
Comparison operator, compare two EtaDepResElement instances based on their respective valid ranges...
bool IsNotOverlap(const EtaDepResElement &e) const
Check if this instance does not have overlapping range with another instance.
double a
Definition: hdecay.h:121
friend std::ostream & operator<<(std::ostream &s, const EtaDepResElement &e)
Output stream operator.
bool IsInInterval(const double &eta) const
Check if an value is within this instance&#39;s range.
const double EtaMin() const
Return the lower limit of valid range.
Calculate and represent resolution for a vector of , pseudorapidity , and azimuthal angle ...
const double EtaMax() const
Return the lower limit of valid range.