]> git.uio.no Git - u/mrichter/AliRoot.git/blame - CORRFW/AliCFEffGrid.h
TRD binning changed on expert's request
[u/mrichter/AliRoot.git] / CORRFW / AliCFEffGrid.h
CommitLineData
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
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();
1e9dad92 23 AliCFEffGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn, const Double_t *binLimitsIn=0);
563113d0 24 AliCFEffGrid(const Char_t* name,const Char_t* title,const AliCFContainer &c);
25 AliCFEffGrid(const AliCFEffGrid& eff);
26
27 virtual ~AliCFEffGrid();
28 AliCFEffGrid& operator=(const AliCFEffGrid& eff);
1e9dad92 29 virtual Double_t GetAverage() const ;
30 virtual Double_t GetAverage(Double_t *varMin,Double_t *varMax) const ;
563113d0 31 virtual Int_t GetSelNumStep() const {return fSelNum;};
32 virtual Int_t GetSelDenStep() const {return fSelDen;};
1e9dad92 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;
a757643f 36 virtual AliCFEffGrid* Project(Int_t,Int_t*,Double_t*,Double_t*) const {AliWarning("Function not to be used"); return 0x0;} //not to be used.
37 virtual AliCFEffGrid* MakeSlice(Int_t nVars,Int_t* vars, Double_t* varMin,Double_t* varMax, Int_t numStep, Int_t denStep) const;
563113d0 38
39 //Efficiency calculation
5d14ed73 40 virtual void CalculateEfficiency(Int_t istep1, Int_t istep2, Option_t *option ="B");
398ea452 41 virtual AliCFVGrid* GetNum() const {return (AliCFVGrid*)fContainer->GetGrid(fSelNum);};
42 virtual AliCFVGrid* GetDen() const {return (AliCFVGrid*)fContainer->GetGrid(fSelDen);};
563113d0 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