6 //--------------------------------------------------------------------//
8 // AliCFEffGrid Class //
9 // Class to handle efficiency grids //
11 //--------------------------------------------------------------------//
13 #include "AliCFGridSparse.h"
14 #include "AliCFContainer.h"
19 class AliCFEffGrid : public AliCFGridSparse
23 AliCFEffGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn, const Double_t *binLimitsIn=0);
24 AliCFEffGrid(const Char_t* name,const Char_t* title,const AliCFContainer &c);
25 AliCFEffGrid(const AliCFEffGrid& eff);
27 virtual ~AliCFEffGrid();
28 AliCFEffGrid& operator=(const AliCFEffGrid& eff);
29 virtual Double_t GetAverage() const ;
30 virtual Double_t GetAverage(Double_t *varMin,Double_t *varMax) const ;
31 virtual Int_t GetSelNumStep() const {return fSelNum;};
32 virtual Int_t GetSelDenStep() const {return fSelDen;};
33 virtual TH1D* Project( Int_t ivar) const;
34 virtual TH2D* Project( Int_t ivar1, Int_t ivar2) const;
35 virtual TH3D* Project( Int_t ivar1, Int_t ivar2,Int_t ivar3) const;
36 virtual AliCFEffGrid* Project(Int_t,Int_t*,Double_t*,Double_t*) const {return 0x0;} //not to be used.
38 //Efficiency calculation
39 virtual void CalculateEfficiency(Int_t istep1, Int_t istep2);
40 virtual AliCFVGrid* GetNum() const {return (AliCFVGrid*)fContainer->GetGrid(fSelNum);};
41 virtual AliCFVGrid* GetDen() const {return (AliCFVGrid*)fContainer->GetGrid(fSelDen);};
42 virtual void SetContainer(const AliCFContainer &c) {fContainer=&c;};
45 virtual void Copy(TObject& eff) const;
49 const AliCFContainer *fContainer; //pointer to the input AliContainer
50 Int_t fSelNum; //numerator selection step
51 Int_t fSelDen; //denominator selection step
53 ClassDef(AliCFEffGrid,1);