ROOT logo
#ifndef ALICFDATAGRID_H
#define ALICFDATAGRID_H

/* $Id$ */

//--------------------------------------------------------------------//
//                                                                    //
// AliCFDataGrid Class                                             //
// Class to handle observed data and correct them                     // 
//                                                                    //
//--------------------------------------------------------------------//

#include "AliCFGridSparse.h"
#include "AliCFEffGrid.h"
#include "AliCFContainer.h"

class AliCFDataGrid : public AliCFGridSparse
{
 public:
  AliCFDataGrid();
  AliCFDataGrid(const Char_t* name,const Char_t* title, const AliCFContainer &c, Int_t step);      //create data grid from container
  AliCFDataGrid(const Char_t* name,const Char_t* title, const Int_t nVarIn, const Int_t* nBinIn);  //create empty data grid to fill it yourself
  AliCFDataGrid(const AliCFDataGrid& c);
  AliCFDataGrid& operator=(const AliCFDataGrid& c);
  virtual ~AliCFDataGrid();

  virtual Int_t GetSelDataStep() const {return fSelData;};

  // Methods for handling/correcting data 

  virtual const AliCFGridSparse*  GetData() {return fContainer->GetGrid(fSelData);};
  virtual void  ApplyEffCorrection(const AliCFEffGrid &eff);
  virtual void  ApplyBGCorrection(const AliCFDataGrid &c);
  //basic operations
  virtual void   Copy(TObject& data) const;
 
  
 private:
  Int_t fSelData; //sel step of the observed data 
  const AliCFContainer *fContainer; //pointer to the input data Container
  ClassDef(AliCFDataGrid,2);
};
    
#endif
 AliCFDataGrid.h:1
 AliCFDataGrid.h:2
 AliCFDataGrid.h:3
 AliCFDataGrid.h:4
 AliCFDataGrid.h:5
 AliCFDataGrid.h:6
 AliCFDataGrid.h:7
 AliCFDataGrid.h:8
 AliCFDataGrid.h:9
 AliCFDataGrid.h:10
 AliCFDataGrid.h:11
 AliCFDataGrid.h:12
 AliCFDataGrid.h:13
 AliCFDataGrid.h:14
 AliCFDataGrid.h:15
 AliCFDataGrid.h:16
 AliCFDataGrid.h:17
 AliCFDataGrid.h:18
 AliCFDataGrid.h:19
 AliCFDataGrid.h:20
 AliCFDataGrid.h:21
 AliCFDataGrid.h:22
 AliCFDataGrid.h:23
 AliCFDataGrid.h:24
 AliCFDataGrid.h:25
 AliCFDataGrid.h:26
 AliCFDataGrid.h:27
 AliCFDataGrid.h:28
 AliCFDataGrid.h:29
 AliCFDataGrid.h:30
 AliCFDataGrid.h:31
 AliCFDataGrid.h:32
 AliCFDataGrid.h:33
 AliCFDataGrid.h:34
 AliCFDataGrid.h:35
 AliCFDataGrid.h:36
 AliCFDataGrid.h:37
 AliCFDataGrid.h:38
 AliCFDataGrid.h:39
 AliCFDataGrid.h:40
 AliCFDataGrid.h:41
 AliCFDataGrid.h:42
 AliCFDataGrid.h:43
 AliCFDataGrid.h:44