]> git.uio.no Git - u/mrichter/AliRoot.git/blame - CORRFW/AliCFContainer.h
Create the rec-point branch even in the case of no digits. Please review and fix...
[u/mrichter/AliRoot.git] / CORRFW / AliCFContainer.h
CommitLineData
563113d0 1#ifndef ALICFCONTAINER_H
2#define ALICFCONTAINER_H
3
4/* $Id$ */
5
6//--------------------------------------------------------------------//
7// //
8// AliCFContainer Class //
9// Class to handle input data for correction Framework //
10// //
11//--------------------------------------------------------------------//
12
13#include "AliCFFrame.h"
14
1e9dad92 15class TH1D;
16class TH2D;
17class TH3D;
18class AliCFVGrid;
563113d0 19
20class AliCFContainer : public AliCFFrame
21{
22 public:
23 AliCFContainer();
24 AliCFContainer(const Char_t* name,const Char_t* title);
db6722a5 25 AliCFContainer(const Char_t* name, const Char_t* title,const Int_t nSelStep, const Int_t nVarIn, const Int_t* nBinIn, const Double_t *binLimitsIn=0, const Bool_t useSparse = kFALSE);
563113d0 26 AliCFContainer(const AliCFContainer& c);
27
28 virtual ~AliCFContainer();
29 AliCFContainer& operator=(const AliCFContainer& corr);
30 virtual Int_t GetNStep() const {return fNStep;};
1e9dad92 31 virtual void SetBinLimits(Int_t varindex, Double_t * array);
32 virtual void Fill(Double_t *var, Int_t istep, Double_t weight=1.);
563113d0 33
318f64b1 34 virtual void SetExcludeOffEntriesInProj(Bool_t in){fExclOffEntriesInProj=in;};
35 virtual Bool_t GetExcludeOffEntriesInProj( ) const {return fExclOffEntriesInProj;};
563113d0 36 virtual Float_t GetOverFlows(Int_t var,Int_t istep) const;
37 virtual Float_t GetUnderFlows(Int_t var,Int_t istep)const ;
563113d0 38 virtual Float_t GetEntries(Int_t istep)const ;
39 virtual Int_t GetEmptyBins(Int_t istep)const ;
1e9dad92 40 virtual Int_t GetEmptyBins(Int_t istep, Double_t *varMin,Double_t *varMax) const ;
41 virtual Double_t GetIntegral(Int_t istep) const ;
42 virtual Double_t GetIntegral(Int_t istep, Double_t *varMin,Double_t *varMax) const ;
563113d0 43 //basic operations
44
45 virtual void Copy(TObject& c) const;
1e9dad92 46 virtual void Add(AliCFContainer* aContainerToAdd, Double_t c=1.);
563113d0 47 virtual Long64_t Merge(TCollection* list);
48
1e9dad92 49 virtual TH1D* ShowProjection( Int_t ivar, Int_t istep) const;
50 virtual TH2D* ShowProjection( Int_t ivar1, Int_t ivar2, Int_t istep) const;
51 virtual TH3D* ShowProjection( Int_t ivar1, Int_t ivar2,Int_t ivar3, Int_t istep) const;
52 virtual TH1D* ShowSlice( Int_t ivar, Double_t *varMin, Double_t *varMax, Int_t istep) const;
318f64b1 53 virtual AliCFVGrid * GetGrid(Int_t istep) const {return (AliCFVGrid*)fGrid[istep];};
563113d0 54
55 private:
56 Int_t fNStep; //number of selection steps
318f64b1 57 Bool_t fExclOffEntriesInProj; // exclude under/overflows in
1e9dad92 58 AliCFVGrid **fGrid;//[fNStep]
563113d0 59
318f64b1 60 ClassDef(AliCFContainer,3);
563113d0 61};
62
63#endif
64