simplified efficiency projection
[u/mrichter/AliRoot.git] / CORRFW / AliCFDataGrid.h
CommitLineData
563113d0 1#ifndef ALICFDATAGRID_H
2#define ALICFDATAGRID_H
3
4/* $Id$ */
5
6//--------------------------------------------------------------------//
7// //
8// AliCFDataGrid Class //
9// Class to handle observed data and correct them //
10// //
11//--------------------------------------------------------------------//
12
25488e18 13#include "AliCFGridSparse.h"
563113d0 14#include "AliCFEffGrid.h"
15#include "AliCFContainer.h"
563113d0 16
25488e18 17class AliCFDataGrid : public AliCFGridSparse
563113d0 18{
19 public:
20 AliCFDataGrid();
21 AliCFDataGrid(const Char_t* name,const Char_t* title);
1e9dad92 22 AliCFDataGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn, const Double_t *binLimitsIn=0);
563113d0 23 AliCFDataGrid(const Char_t* name,const Char_t* title,const AliCFContainer &c);
24 AliCFDataGrid(const AliCFDataGrid& c);
25
26 virtual ~AliCFDataGrid();
27 AliCFDataGrid& operator=(const AliCFDataGrid& c);
28 virtual Int_t GetSelDataStep() const {return fSelData;};
29
30 // Methods for handling/correcting data
31
32 virtual void SetMeasured(Int_t istep);
318f64b1 33 virtual const AliCFVGrid* GetData() {return (AliCFVGrid*)fContainer->GetGrid(fSelData);};
563113d0 34 virtual void ApplyEffCorrection(const AliCFEffGrid &eff);
35 virtual void ApplyBGCorrection(const AliCFDataGrid &c);
36 virtual void SetContainer(const AliCFContainer &c) {fContainer=&c;};
563113d0 37 //basic operations
38 virtual void Copy(TObject& data) const;
39
40
41 private:
42 Int_t fSelData; //sel step of the observed data
43 const AliCFContainer *fContainer; //pointer to the input data Container
318f64b1 44 ClassDef(AliCFDataGrid,2);
563113d0 45};
46
47#endif
48