]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG0/AliCorrectionMatrix3D.h
Script to convert raw format to root format (Marian)
[u/mrichter/AliRoot.git] / PWG0 / AliCorrectionMatrix3D.h
1 #ifndef ALICORRECTIONMATRIX3D_H
2 #define ALICORRECTIONMATRIX3D_H
3
4 /* $Id$ */
5
6 // ------------------------------------------------------
7 //
8 // Class to handle 3d-corrections.
9 //
10 // ------------------------------------------------------
11
12 #include <AliCorrectionMatrix.h>
13
14 class TH3F;
15
16 class AliCorrectionMatrix3D : public AliCorrectionMatrix
17 {
18 public:
19   AliCorrectionMatrix3D();
20   AliCorrectionMatrix3D(const AliCorrectionMatrix3D& c);
21   AliCorrectionMatrix3D(const Char_t* name, const Char_t* title,
22                      Int_t nBinX=10, Float_t Xmin=0., Float_t Xmax=10.,
23                      Int_t nBinY=10, Float_t Ymin=0., Float_t Ymax=10.,
24                      Int_t nBinZ=10, Float_t Zmin=0., Float_t Zmax=10.);
25
26   AliCorrectionMatrix3D(const Char_t* name, const Char_t* title,
27          Int_t nBinX, Float_t Xmin, Float_t Xmax,
28          Int_t nBinY, Float_t Ymin, Float_t Ymax,
29          Int_t nBinZ, const Float_t* zbins);
30
31   virtual ~AliCorrectionMatrix3D();
32
33   TH3F* GetGeneratedHistogram();
34   TH3F* GetMeasuredHistogram();
35   TH3F* GetCorrectionHistogram();
36
37   void FillMeas(Float_t ax, Float_t ay, Float_t az);
38   void FillGene(Float_t ax, Float_t ay, Float_t az);
39
40   Float_t GetCorrection(Float_t ax, Float_t ay, Float_t az) const;
41
42   void RemoveEdges(Float_t cut=2, Int_t nBinsXedge = 0, Int_t nBinsYedge = 0, Int_t nBinsZedge = 0);
43
44   virtual void SaveHistograms();
45
46 protected:
47   ClassDef(AliCorrectionMatrix3D,1)
48 };
49
50 #endif
51