CMS 3D CMS Logo

EtaDepResolution.h
Go to the documentation of this file.
1 //
2 //
3 // CMSSW File : interface/EtaDepResolution.h
4 // Original Author : Haryo Sumowidagdo <Suharyo.Sumowidagdo@cern.ch>
5 // Purpose : Hold on to eta-dependent resolution.
6 // Return Vector_Resolution as a function of eta.
7 // Does not assume symmetry between +/- eta.
8 // The interpretation of eta (physics or detector) is
9 // left to user's implementation.
10 //
11 
31 #ifndef HITFIT_ETA_DEP_RESOLUTION
32 #define HITFIT_ETA_DEP_RESOLUTION
33 
37 
38 namespace hitfit {
39 
87  private:
91  std::vector<EtaDepResElement> _EtaDepResElement;
92 
102  std::vector<EtaDepResElement>::const_iterator FindResolution(double& eta) const;
103 
104  public:
108  void sort();
109 
115 
122  EtaDepResolution(const std::string& default_file);
123 
128 
137 
146 
155  bool CheckNoOverlap(const std::vector<EtaDepResElement>& v);
156 
160  const double EtaMin() const;
161 
165  const double EtaMax() const;
166 
175  const bool CheckEta(double eta) const;
176 
186 
194  Vector_Resolution GetResolution(double& eta) const;
195 
205 
212  const std::vector<EtaDepResElement> GetEtaDepResElement() const;
213  };
214 
215 } // namespace hitfit
216 #endif // not #ifndef HITFIT_ETA_DEP_RESOLUTION
const double EtaMax() const
Return the upper limit of the valid -range.
Vector_Resolution GetResolution(double &eta) const
Return the corresponding resolution for a value of .
Calculate and represent resolution for a vector of momentum , pseudorapidity , and azimuthal angle ...
std::vector< EtaDepResElement >::size_type Read(const std::string &default_file)
Read the -dependent resolution information from an ASCII text file.
A lightweight implementation of the Defaults interface that uses simple ASCII text files...
Represent a resolution and an range in which the resolution is valid.
bool CheckNoOverlap(const std::vector< EtaDepResElement > &v)
Check for non-overlapping -range between -dependent resolution elements in a list.
uint16_t size_type
Hold on to -dependent resolution. This class acts as a function object and returns Vector_Resolution ...
std::vector< EtaDepResElement > _EtaDepResElement
Vector_Resolution operator()(double &eta)
Allow users to call this instance as a function to access the corresponding resolution for an input v...
EtaDepResolution()
Default constructor, instantiate an EtaDepResolution object with empty list of -dependent resolution ...
const bool CheckEta(double eta) const
Check is an input value is within the valid -range of this instance.
Define a concrete interface for getting parameter settings from an ASCII text file.
std::vector< EtaDepResElement >::const_iterator FindResolution(double &eta) const
Internal method to return the corresponding -dependent resolution element for a given value...
const double EtaMin() const
Return the lower limit of the valid -range.
Hold on to an element of -dependent resolution object, namely a resolution and range in which the r...
Calculate and represent resolution for a vector of , pseudorapidity , and azimuthal angle ...
const std::vector< EtaDepResElement > GetEtaDepResElement() const
Access the internal list of -dependent resolution elements.