#102886: Various fixes to the the code in EVE, STEER, PWGPP, cmake
[u/mrichter/AliRoot.git] / CORRFW / AliCFEffGrid.h
563113d0 1#ifndef ALICFEFFGRID_H
4/* $Id$ */
fb494025 6//-----------------------------------------------------------------//
7// //
563113d0 8// AliCFEffGrid Class //
fb494025 9// Class to handle efficiency grids //
10// //
563113d0 12
25488e18 13#include "AliCFGridSparse.h"
563113d0 14#include "AliCFContainer.h"
1e9dad92 15class TH1D;
16class TH2D;
17class TH3D;
563113d0 18
25488e18 19class AliCFEffGrid : public AliCFGridSparse
563113d0 20{
21 public:
22 AliCFEffGrid();
fb494025 23 AliCFEffGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn);
d91baff0 24 AliCFEffGrid(const Char_t* name,const Char_t* title, const AliCFContainer &c);
563113d0 25 virtual ~AliCFEffGrid();
fb494025 26 AliCFEffGrid(const AliCFEffGrid& eff);
563113d0 27 AliCFEffGrid& operator=(const AliCFEffGrid& eff);
fb494025 28
1e9dad92 29 virtual Double_t GetAverage() const ;
563113d0 30 virtual Int_t GetSelNumStep() const {return fSelNum;};
31 virtual Int_t GetSelDenStep() const {return fSelDen;};
d91baff0 32 virtual TH1* Project(Int_t ivar1, Int_t ivar2=-1,Int_t ivar3=-1) const;
33 virtual AliCFGridSparse* Project(Int_t, const Int_t*, const Double_t*, const Double_t*, Bool_t) const {AliWarning("should not be used"); return 0x0;}
34 virtual AliCFEffGrid* MakeSlice(Int_t nVars, const Int_t* vars, const Double_t* varMin, const Double_t* varMax, Bool_t useBins=0) const;
563113d0 35
36 //Efficiency calculation
fb494025 37 virtual void CalculateEfficiency(Int_t istep1, Int_t istep2, Option_t *option ="B" /*binomial*/);
38 virtual AliCFGridSparse* GetNum() const {return fContainer->GetGrid(fSelNum);};
39 virtual AliCFGridSparse* GetDen() const {return fContainer->GetGrid(fSelDen);};
563113d0 40 virtual void SetContainer(const AliCFContainer &c) {fContainer=&c;};
563113d0 42 private:
fb494025 43 const AliCFContainer *fContainer; //pointer to the input AliContainer
44 Int_t fSelNum; //numerator selection step
45 Int_t fSelDen; //denominator selection step
563113d0 46
47 ClassDef(AliCFEffGrid,1);