final updates and fixups in the container classes
[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
13#include "AliCFGrid.h"
14#include "AliCFContainer.h"
563113d0 15#include <TTree.h>
1e9dad92 16class TH1D;
17class TH2D;
18class TH3D;
563113d0 19
20class AliCFEffGrid : public AliCFGrid
21{
22 public:
23 AliCFEffGrid();
1e9dad92 24 AliCFEffGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn, const Double_t *binLimitsIn=0);
563113d0 25 AliCFEffGrid(const Char_t* name,const Char_t* title,const AliCFContainer &c);
26 AliCFEffGrid(const AliCFEffGrid& eff);
27
28 virtual ~AliCFEffGrid();
29 AliCFEffGrid& operator=(const AliCFEffGrid& eff);
1e9dad92 30 virtual Double_t GetAverage() const ;
31 virtual Double_t GetAverage(Double_t *varMin,Double_t *varMax) const ;
563113d0 32 virtual Int_t GetSelNumStep() const {return fSelNum;};
33 virtual Int_t GetSelDenStep() const {return fSelDen;};
1e9dad92 34 virtual TH1D* Project( Int_t ivar) const;
35 virtual TH2D* Project( Int_t ivar1, Int_t ivar2) const;
36 virtual TH3D* Project( Int_t ivar1, Int_t ivar2,Int_t ivar3) const;
563113d0 37
38 //Efficiency calculation
39 virtual void CalculateEfficiency(Int_t istep1, Int_t istep2);
318f64b1 40 virtual const AliCFVGrid* GetNum() {return (AliCFVGrid*)fContainer->GetGrid(fSelNum);};
41 virtual const AliCFVGrid* GetDen() {return (AliCFVGrid*)fContainer->GetGrid(fSelDen);};
563113d0 42 virtual void SetContainer(const AliCFContainer &c) {fContainer=&c;};
43
44 //basic operations
45 virtual void Copy(TObject& eff) const;
46
47
48 private:
49 const AliCFContainer *fContainer; //pointer to the input AliContainer
50 Int_t fSelNum; //numerator selection step
51 Int_t fSelDen; //denominator selection step
52
53 ClassDef(AliCFEffGrid,1);
54};
55
56#endif
57