Merge branch 'master_patch'
[u/mrichter/AliRoot.git] / PHOS / AliPHOSRawFitterv1.h
CommitLineData
379c5c09 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"
2d43e000 13#include "TArrayD.h"
379c5c09 14class TList;
15
16class AliPHOSRawFitterv1 : public AliPHOSRawFitterv0 {
17
18public:
19
20 AliPHOSRawFitterv1();
21 AliPHOSRawFitterv1(const AliPHOSRawFitterv1& rawFitter);
22 AliPHOSRawFitterv1& operator = (const AliPHOSRawFitterv1& rawFitter);
23 virtual ~AliPHOSRawFitterv1();
de0cfd46 24
92236b27 25 virtual Bool_t Eval(const UShort_t *signal, Int_t sigStart, Int_t sigLength);
de0cfd46 26
379c5c09 27 static Double_t Gamma2(Double_t dt,Double_t en,Double_t b,TArrayD * fitparams) ; // Shape of correct sample
de0cfd46 28 //class member function (not object member function)
379c5c09 29 void SetLowGainParams(Int_t n, Double_t * params){fSampleParamsLow->Set(n,params) ;} //fixed parameters of fit function
30 void SetHighGainParams(Int_t n,Double_t * params){fSampleParamsHigh->Set(n,params) ;} //fixed parameters of fit function
31
de0cfd46 32
33protected:
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
39protected:
379c5c09 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
de0cfd46 43
44
45
46private:
379c5c09 47 ClassDef(AliPHOSRawFitterv1,1)
48};
49
50#endif