]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSRawFitterv4.h
Another fitter to handle samples with overflow
[u/mrichter/AliRoot.git] / PHOS / AliPHOSRawFitterv4.h
1 #ifndef ALIPHOSRAWFITTERV4_H
2 #define ALIPHOSRAWFITTERV4_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 signal parameters (energy, time, quality)
9 // from ALTRO samples. Energy is in ADC counts, time is in time bin units.
10 // A coarse algorithm is applied.
11
12 class TArrayI;
13 class TArrayD;
14 class AliPHOSCalibData;
15 #include "AliPHOSRawFitterv1.h"
16
17 class AliPHOSRawFitterv4 : public AliPHOSRawFitterv1 
18 {
19
20 public:
21
22   AliPHOSRawFitterv4();
23   AliPHOSRawFitterv4(const AliPHOSRawFitterv4& rawFitterv4);
24   virtual ~AliPHOSRawFitterv4();
25
26   virtual Bool_t Eval(const UShort_t *signal, Int_t sigStart, Int_t sigLength);
27   
28   //Switch on/off fitting of HighGain samples. By default off
29   void FitHighGain(Bool_t on=kTRUE){fFitHighGain=on;}
30
31 protected:   
32   static void UnfoldingChiSquare(Int_t & nPar, Double_t * Grad, Double_t & fret, Double_t * x, Int_t iflag)  ;
33                                             // Chi^2 of the fit. Should be static to be passed to MINUIT
34   Bool_t EvalWithFitting(TArrayI*samples, TArrayI * times);
35
36   Bool_t fFitHighGain ; //Switch on/off fitting of the HG channel
37   
38   ClassDef(AliPHOSRawFitterv4,1)
39 };
40
41 #endif