]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSPhysicsAnalyzerPeakFitter.h
Components for selective readout of the DDL blocks
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSPhysicsAnalyzerPeakFitter.h
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Authors: Oystein Djuvsland <oysteind@ift.uib.no>                       *
5  *                                                                        *
6  * Permission to use, copy, modify and distribute this software and its   *
7  * documentation strictly for non-commercial purposes is hereby granted   *
8  * without fee, provided that the above copyright notice appears in all   *
9  * copies and that both the copyright notice and this permission notice   *
10  * appear in the supporting documentation. The authors make no claims     *
11  * about the suitability of this software for any purpose. It is          *
12  * provided "as is" without express or implied warranty.                  *
13  **************************************************************************/
14
15 #ifndef ALIHLTPHOSPHYSICSANALYZERPEAKFITTER_H
16 #define ALIHLTPHOSPHYSICSANALYZERPEAKFITTER_H
17
18 /**
19  * Class does fitting on an histogram
20  *
21  * @file   AliHLTPHOSPhysicsAnalyzerPeakFitter.h
22  * @author Oystein Djuvsland
23  * @date
24  * @brief  Fitter for PHOS HLT
25  */
26
27 // see below for class documentation
28 // or
29 // refer to README to build package
30 // or
31 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
32
33 #include "Rtypes.h"
34 //#include "AliHLTPHOSClusterDataStruct.h"
35 #include "AliHLTDataTypes.h"
36 #include "TH1F.h"
37 #include "TMath.h"
38
39 /** 
40  * @class AliHLTPHOSPhysicsAnalyzerPeakFitter
41  * Fitter for PHOS HLT
42  * Makes a fit on a histogram, either a Lorentzian fit or
43  * Gaussian fit
44  *
45  * @ingroup alihlt_phos
46  */
47 class AliHLTPHOSPhysicsAnalyzerPeakFitter
48 {
49
50  public:
51
52   /** Constructor */
53   AliHLTPHOSPhysicsAnalyzerPeakFitter();
54
55   /** Destructor */
56   virtual ~AliHLTPHOSPhysicsAnalyzerPeakFitter();
57
58   /** Copy constructor */
59   AliHLTPHOSPhysicsAnalyzerPeakFitter(const AliHLTPHOSPhysicsAnalyzerPeakFitter &);
60
61   /** Assignment operator */
62   AliHLTPHOSPhysicsAnalyzerPeakFitter & operator = (const AliHLTPHOSPhysicsAnalyzerPeakFitter &) {return *this;}
63
64   /** Set histogram */
65   void    SetHistogram(TH1F* histPtr)            { fRootHistPtr = histPtr; }
66
67   /** Fit with a gaussian */
68   Int_t   FitGaussian();
69
70   /** Fit with a lorentzian */
71   Int_t   FitLorentzian();
72   
73
74  private:
75   
76   /** Factor for low gain */
77   Float_t fGainLow;             //COMMENT
78
79   /** Factor for high gain */
80   Float_t fGainHigh;            //COMMENT
81
82   /** Pointer to the ROOT histogram */
83   TH1F* fRootHistPtr;           //! transient
84  
85   ClassDef(AliHLTPHOSPhysicsAnalyzerPeakFitter, 1);
86
87 };
88
89
90
91
92
93
94 #endif