CMS 3D CMS Logo

CastorPulseShapes.h
Go to the documentation of this file.
1 #ifndef CALIBCALORIMETRY_CASTORALGOS_CASTORPULSESHAPES_H
2 #define CALIBCALORIMETRY_CASTORALGOS_CASTORPULSESHAPES_H 1
3 
4 #include <vector>
5 
11 public:
13 
14  class Shape {
15  public:
16  Shape();
17  void setNBin(int n);
18  void setShapeBin(int i, float f);
19  float getTpeak() const { return tpeak_; }
20  float operator()(double time) const;
21  float at(double time) const;
22  float integrate(double tmin, double tmax) const;
23  private:
24  std::vector<float> shape_;
25  int nbin_;
26  float tpeak_;
27  };
28 
29  const Shape& castorShape() const { return castorShape_; }
30 
31 private:
33  void computeCastorShape(Shape& s);
34 };
35 #endif
float operator()(double time) const
float at(double time) const
void setShapeBin(int i, float f)
void computeCastorShape(Shape &s)
std::vector< float > shape_
double f[11][100]
static const double tmax[3]
float integrate(double tmin, double tmax) const
const Shape & castorShape() const