CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PulseFitWithShape.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------
2 //----------------------------------------------------------------------
3 // File PulseFitWithShape.h
4 
5 #ifndef PulseFitWithShape_H
6 #define PulseFitWithShape_H
7 #include "TObject.h"
8 #include<vector>
9 
10 class PulseFitWithShape: public TObject
11 {
12  public:
13  // Default Constructor, mainly for Root
15 
16  // Destructor: Does nothing
17  virtual ~PulseFitWithShape() ;
18 
19  // Initialize
20  virtual void init(int,int,int,int,int,std::vector <double>,double) ;
21 
22  // Compute amplitude of a channel
23 
24  virtual double doFit(double *,double *cova=0) ;
25 
26  double fAmp_fitted_max ; // amplitude maximum fitted
27  double fTim_fitted_max ; // time of amplitude maximum fitted
28 
29  double getAmpl() { return fAmp_fitted_max; }
30  double getTime() { return fTim_fitted_max; }
31 
32 
33  private:
34 
35  int fNsamples ; // maximum number of samples into framelegth
36  int fNsamplesShape ; // maximum number of samples into framelegth
37  double fNoise;
38 
39  std::vector < double > pshape;
40  std::vector < double > dshape;
41 
42  int fNb_iter ; // maximum number of iterations
43  int fNum_samp_bef_max ; // number of samples before maximum sample
44  int fNum_samp_after_max ; // number of samples after maximum sample
45 
46 
47  // ClassDef(PulseFitWithShape,1) //!< The processed part of the class is persistant
48 
49 } ;
50 
51 #endif
52 
53 
54 
55 //-----------------------------------------------------------------------
56 //----------------------------------------------------------------------
std::vector< double > pshape
virtual double doFit(double *, double *cova=0)
virtual ~PulseFitWithShape()
std::vector< double > dshape
virtual void init(int, int, int, int, int, std::vector< double >, double)