]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSRawFitterv4.h
update from ALICE
[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   virtual ~AliPHOSRawFitterv4();
24
25   virtual Bool_t Eval(const UShort_t *signal, Int_t sigStart, Int_t sigLength);
26   
27   //Switch on/off fitting of HighGain samples. By default off
28   void FitHighGain(Bool_t on=kTRUE){fFitHighGain=on;}
29
30 protected:   
31   static void UnfoldingChiSquare(Int_t & nPar, Double_t * Grad, Double_t & fret, Double_t * x, Int_t iflag)  ;
32                                             // Chi^2 of the fit. Should be static to be passed to MINUIT
33   Bool_t EvalWithFitting(TArrayI*samples, TArrayI * times);
34
35   Bool_t fFitHighGain ; //Switch on/off fitting of the HG channel
36
37  private:  
38   AliPHOSRawFitterv4(const AliPHOSRawFitterv4& rawFitterv4);
39   AliPHOSRawFitterv4& operator=(const AliPHOSRawFitterv4& rawFitterv4);
40
41   ClassDef(AliPHOSRawFitterv4,1)
42 };
43
44 #endif