]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG0/AliCorrectionMatrix2D.h
compatibility with release and HEAD
[u/mrichter/AliRoot.git] / PWG0 / AliCorrectionMatrix2D.h
1 #ifndef ALICORRECTIONMATRIX2D_H
2 #define ALICORRECTIONMATRIX2D_H
3
4 /* $Id$ */
5
6 // ------------------------------------------------------
7 //
8 // Class to handle 2d-corrections.
9 //
10 // ------------------------------------------------------
11
12 #include <AliCorrectionMatrix.h>
13
14 class TH2F;
15 class TH1F;
16
17 class AliCorrectionMatrix2D : public AliCorrectionMatrix
18 {
19 public:
20   AliCorrectionMatrix2D();
21   AliCorrectionMatrix2D(const AliCorrectionMatrix2D& c);
22   AliCorrectionMatrix2D(const Char_t* name, const Char_t* title,
23                      Int_t nBinX=10, Float_t Xmin=0., Float_t Xmax=10.,
24                      Int_t nBinY=10, Float_t Ymin=0., Float_t Ymax=10.);
25
26   AliCorrectionMatrix2D(const Char_t* name, const Char_t* title,
27                      Int_t nBinX, Float_t *X, Int_t nBinY, Float_t *Y);
28
29   virtual ~AliCorrectionMatrix2D();
30
31   AliCorrectionMatrix2D& operator= (const AliCorrectionMatrix2D& c);
32
33   TH2F* GetGeneratedHistogram() const;
34   TH2F* GetMeasuredHistogram() const;
35
36   TH2F* GetCorrectionHistogram() {return (TH2F*)fhCorr;}
37   TH1F* Get1DCorrection(Char_t* opt="x", Float_t min=0, Float_t max=0);
38
39   void FillMeas(Float_t ax, Float_t ay);
40   void FillGene(Float_t ax, Float_t ay);
41   Float_t GetCorrection(Float_t ax, Float_t ay) const;
42
43   void RemoveEdges(Float_t cut=2, Int_t nBinsX=0, Int_t nBinsY=0);
44
45 protected:
46   ClassDef(AliCorrectionMatrix2D,1)
47
48 private:
49 };
50
51 #endif
52