Line data Source code
1 : #ifndef ALIPHOSRAWFITTERV1_H
2 : #define ALIPHOSRAWFITTERV1_H
3 : /* Copyright(c) 2007, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id: $ */
7 :
8 : // This class extracts the PHOS "digits" of current event
9 : // (amplitude,time, position,gain) from the raw stream
10 : // provided by AliRawReader. See cxx source for use case.
11 :
12 : #include "AliPHOSRawFitterv0.h"
13 : #include "TArrayD.h"
14 : class TList;
15 :
16 : class AliPHOSRawFitterv1 : public AliPHOSRawFitterv0 {
17 :
18 : public:
19 :
20 : AliPHOSRawFitterv1();
21 : AliPHOSRawFitterv1(const AliPHOSRawFitterv1& rawFitter);
22 : AliPHOSRawFitterv1& operator = (const AliPHOSRawFitterv1& rawFitter);
23 : virtual ~AliPHOSRawFitterv1();
24 :
25 : virtual Bool_t Eval(const UShort_t *signal, Int_t sigStart, Int_t sigLength);
26 :
27 : static Double_t Gamma2(Double_t dt,Double_t en,Double_t b,TArrayD * fitparams) ; // Shape of correct sample
28 : //class member function (not object member function)
29 0 : void SetLowGainParams(Int_t n, Double_t * params){fSampleParamsLow->Set(n,params) ;} //fixed parameters of fit function
30 0 : void SetHighGainParams(Int_t n,Double_t * params){fSampleParamsHigh->Set(n,params) ;} //fixed parameters of fit function
31 :
32 :
33 : protected:
34 : static void UnfoldingChiSquare(Int_t & nPar, Double_t * Grad, Double_t & fret, Double_t * x, Int_t iflag) ;
35 : // Chi^2 of the fit. Should be static to be passed to MINUIT
36 :
37 :
38 :
39 : protected:
40 : TArrayD *fSampleParamsLow ; //Fixed params of sample parameterization for Low gain
41 : TArrayD *fSampleParamsHigh; //Fixed params of sample parameterization for High gain
42 : TList *fToFit ; //! container to transfer parameters and data to fit
43 :
44 :
45 :
46 : private:
47 22 : ClassDef(AliPHOSRawFitterv1,1)
48 : };
49 :
50 : #endif
|