CMS 3D CMS Logo

EcalMustacheSCParameters.h
Go to the documentation of this file.
1 #ifndef CondFormats_EcalObjects_EcalMustacheSCParameters_h
2 #define CondFormats_EcalObjects_EcalMustacheSCParameters_h
3 
4 #include <iostream>
5 #include <vector>
6 
8 
9 namespace reco {
10  class MustacheSCParametersHelper;
11 } // namespace reco
12 
14 public:
16  virtual ~EcalMustacheSCParameters() = default;
17 
19  double log10EMin;
20  double etaMin;
21  std::vector<double> pUp;
22  std::vector<double> pLow;
23  std::vector<double> w0Up;
24  std::vector<double> w1Up;
25  std::vector<double> w0Low;
26  std::vector<double> w1Low;
27 
29  };
30 
31  float sqrtLogClustETuning() const;
32 
33  const ParabolaParameters* parabolaParameters(float log10ClustE, float absSeedEta) const;
34 
35  // helper class to set parameters
37 
38  // print parameters to stream:
39  void print(std::ostream&) const;
40  friend std::ostream& operator<<(std::ostream& out, const EcalMustacheSCParameters& params) {
41  params.print(out);
42  return out;
43  }
44 
45 protected:
47 
48  // collection is expected to be sorted in ascending ParabolaParameters.log10EMin and ascending ParabolaParameters.etaMax
49  std::vector<ParabolaParameters> parabolaParametersCollection_;
50 
52 };
53 
54 #endif
virtual ~EcalMustacheSCParameters()=default
const ParabolaParameters * parabolaParameters(float log10ClustE, float absSeedEta) const
friend std::ostream & operator<<(std::ostream &out, const EcalMustacheSCParameters &params)
std::vector< ParabolaParameters > parabolaParametersCollection_
#define COND_SERIALIZABLE
Definition: Serializable.h:39
fixed size matrix
void print(std::ostream &) const