563113d0 |
1 | #ifndef ALICFEFFGRID_H |
2 | #define ALICFEFFGRID_H |
3 | |
4 | /* $Id$ */ |
5 | |
6 | //--------------------------------------------------------------------// |
7 | // // |
8 | // AliCFEffGrid Class // |
9 | // Class to handle efficiency grids // |
10 | // // |
11 | //--------------------------------------------------------------------// |
12 | |
13 | #include "AliCFGrid.h" |
14 | #include "AliCFContainer.h" |
15 | #include <TNamed.h> |
16 | #include <TTree.h> |
17 | #include <TH1F.h> |
18 | #include <TH2F.h> |
19 | #include <TH3F.h> |
20 | |
21 | class AliCFEffGrid : public AliCFGrid |
22 | { |
23 | public: |
24 | AliCFEffGrid(); |
25 | AliCFEffGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn, const Float_t *binLimitsIn=0); |
26 | AliCFEffGrid(const Char_t* name,const Char_t* title,const AliCFContainer &c); |
27 | AliCFEffGrid(const AliCFEffGrid& eff); |
28 | |
29 | virtual ~AliCFEffGrid(); |
30 | AliCFEffGrid& operator=(const AliCFEffGrid& eff); |
31 | virtual Float_t GetAverage() const ; |
32 | virtual Float_t GetAverage(Float_t *varMin,Float_t *varMax) const ; |
33 | virtual Int_t GetSelNumStep() const {return fSelNum;}; |
34 | virtual Int_t GetSelDenStep() const {return fSelDen;}; |
35 | virtual TH1F* Project( Int_t ivar) const; |
36 | virtual TH2F* Project( Int_t ivar1, Int_t ivar2) const; |
37 | virtual TH3F* Project( Int_t ivar1, Int_t ivar2,Int_t ivar3) const; |
38 | |
39 | //Efficiency calculation |
40 | virtual void CalculateEfficiency(Int_t istep1, Int_t istep2); |
41 | virtual const AliCFGrid* GetNum() {return fContainer->GetGrid(fSelNum);}; |
42 | virtual const AliCFGrid* GetDen() {return fContainer->GetGrid(fSelDen);}; |
43 | virtual void SetContainer(const AliCFContainer &c) {fContainer=&c;}; |
44 | |
45 | //basic operations |
46 | virtual void Copy(TObject& eff) const; |
47 | |
48 | |
49 | private: |
50 | const AliCFContainer *fContainer; //pointer to the input AliContainer |
51 | Int_t fSelNum; //numerator selection step |
52 | Int_t fSelDen; //denominator selection step |
53 | |
54 | ClassDef(AliCFEffGrid,1); |
55 | }; |
56 | |
57 | #endif |
58 | |