]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSRawAnalyzer.h
6d5c619206a5bf4df4ce9818040399c998018a54
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRawAnalyzer.h
1 #ifndef ALIHLTPHOSRAWANALYZER_H
2 #define ALIHLTPHOSRAWANALYZER_H
3 /* Copyright(c) 1998-2004, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 #include "Rtypes.h"
9
10 class AliHLTPHOSRawAnalyzer
11 {
12  public:
13   AliHLTPHOSRawAnalyzer();
14   virtual ~AliHLTPHOSRawAnalyzer();
15   AliHLTPHOSRawAnalyzer(double *dataPtr, double fs);
16   AliHLTPHOSRawAnalyzer(const AliHLTPHOSRawAnalyzer & );
17   AliHLTPHOSRawAnalyzer & operator = (const AliHLTPHOSRawAnalyzer &)
18     {
19       return *this;
20     }
21
22   void BaselineCorrection(double *dataPtr, int N);
23   void BaselineCorrection(double *dataPtr, double baselineValue);  
24   int FindStartIndex(double treshold);
25   float GetTiming();
26   float GetEnergy();
27   void SetData(double *data);
28   void SetSampleFreq(double freq);
29   void SetStartIndex(int startIndex);
30   void MakeInitialGuess();
31   void MakeInitialGuess(int treshold);
32   virtual void SetTVector(Double_t *tVector, Int_t size);
33   virtual void SetAVector(Double_t *aVector, Int_t size);
34   virtual void Evaluate(int start = 0, int lenght = 100) = 0;
35   Double_t GetMaxValue(Double_t *dta, Int_t size);
36
37  protected:
38   Double_t   *fFloatDataPtr;   /**<Float representation of data that should be fitted */
39   double     fSampleFrequency; /**<The ADC sample frequency in MHz used under data taking */
40   double     fDTofGuess;       /**<Initial guess for t0*/
41   double     fDAmplGuess;      /**<Initial guess for amplitude*/
42   double     fTau;             /**<The risetime in micro seconds*/               
43   double     fDTof;            /**<Time of flight in entities of sample intervals */
44   double     fDAmpl;           /**<Amplitude in entities of ADC levels*/
45   //  int        n;
46   int        fStartIndex;
47 };
48
49
50 #endif