Fixes for building of DA (Anshul)
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibGainMult.h
1 #ifndef ALITPCCALIBGAINMULT_H
2 #define ALITPCCALIBGAINMULT_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 #include "AliTPCcalibBase.h"
8 #include "AliTPCCalPad.h"
9 #include "TH3F.h"
10 #include "TF1.h"
11 #include "THnSparse.h"
12 class TH1F;
13 class TList;
14 class AliESDEvent;
15 class AliESDtrack;
16 class AliTPCseed;
17
18 #include "TTreeStream.h"
19
20
21 class AliTPCcalibGainMult:public AliTPCcalibBase {
22 public:
23   AliTPCcalibGainMult(); 
24   AliTPCcalibGainMult(const Text_t *name, const Text_t *title);
25   virtual ~AliTPCcalibGainMult();
26   //
27   virtual void           Process(AliESDEvent *event);
28   virtual Long64_t       Merge(TCollection *li);
29   virtual void           Analyze();
30   //
31   TH1F   *          GetHistNTracks() const {return fHistNTracks;};
32   TH1F   *          GetHistClusterShape() const {return fHistClusterShape;};
33   TH3F   *          GetHistQA() const {return fHistQA;};
34   //
35   THnSparseF *      GetHistGainSector() const {return fHistGainSector;};
36   THnSparseF *      GetHistPadEqual() const {return fHistPadEqual;};
37   THnSparseF *      GetHistGainMult() const {return fHistGainMult;};
38   //
39   void SetMIPvalue(Float_t mip){fMIP = mip;};
40   void SetLowerTrunc(Float_t lowerTrunc){fLowerTrunc = lowerTrunc;};
41   void SetUpperTrunc(Float_t upperTrunc){fUpperTrunc = upperTrunc;};
42   void SetUseMax(Bool_t useMax){fUseMax = useMax;};
43   //
44   //
45   static void       BinLogX(const TH1 *h);   // method for correct histogram binning
46   void     Process(AliESDtrack *track, Int_t runNo=-1){AliTPCcalibBase::Process(track,runNo);};
47   void     Process(AliTPCseed *track){return AliTPCcalibBase::Process(track);}
48   //
49   void     MakeLookup(THnSparse * hist, Char_t * outputFile);
50   //
51   void     UpdateGainMap();
52   void     UpdateClusterParam();
53
54
55 private:
56   //
57   // parameter specifications
58   //
59   Float_t fMIP;                  // MIP position to be in fMIP
60   Float_t fLowerTrunc;           // lower truncation for dEdx
61   Float_t fUpperTrunc;           // upper truncation for dEdx
62   //
63   Bool_t fUseMax;                 // flag if Qmax or Qtot should be used
64   //
65   // histograms
66   //
67   TH1F  *fHistNTracks;            //  histogram showing number of ESD tracks per event
68   TH1F  *fHistClusterShape;       //  histogram to check the cluster shape
69   TH3F  *fHistQA;                 //  dE/dx histogram showing the final spectrum
70   //
71   THnSparseF * fHistGainSector;   //  histogram which shows MIP peak for each of the 3x36 sectors (pad region)
72   THnSparseF * fHistPadEqual;     //  histogram for the equalization of the gain in the different pad regions -> pass0
73   THnSparseF * fHistGainMult;     //  histogram which shows decrease of MIP signal as a function
74   //
75   AliTPCcalibGainMult(const AliTPCcalibGainMult&); 
76   AliTPCcalibGainMult& operator=(const AliTPCcalibGainMult&); 
77
78   ClassDef(AliTPCcalibGainMult, 1); 
79 };
80
81 #endif
82
83