AliRsnReader:
[u/mrichter/AliRoot.git] / OCDB / EMCAL / Calib / AliEMCALPi0SelectionParam.h
1 #ifndef ALIEMCALPI0SELECTIONPARAM_H
2 #define ALIEMCALPI0SELECTIONPARAM_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5
6 /* $Id: AliEMCALPi0SelectionParam.h 24500 2008-03-13 23:39:38Z jklay $ */
7
8 //_________________________________________________________________________
9 //  Set of parameters for pi0 selection 
10 // unit is GeV
11 // pi0SelectionParam -> AliEMCALPi0SelectionParRec
12 //                  
13 //*-- Author: Aleksei Pavlinov (WSU, Detroit, USA) 
14
15 // --- ROOT system ---
16 #include <TNamed.h>
17 #include <TObjArray.h>
18
19 // pi0SelectionParam -> AliEMCALPi0SelectionParRec
20
21 class  AliEMCALPi0SelectionParRec :  public TObject{
22   friend class AliEMCALPi0SelectionParam;
23   friend class AliEMCALPi0Calibration;
24  public:
25   AliEMCALPi0SelectionParRec();
26   virtual ~AliEMCALPi0SelectionParRec() {};
27   virtual const char* GetName() const {return "Pi0Par";}
28
29  protected:
30   double fEOfRpMin;   // minimal energy of em.cluster (rec point)
31   double fEOfRpMax;   // maximal energy of em.cluster (rec point)
32   double fMassGGMin;  // minimal mass of gamma,gamma
33   double fMassGGMax;  // maximal mass of gamma,gamma
34   double fMomPi0Min;  // minimal pi0 momentum
35   double fMomPi0Max;  // maximal pi0 momentum
36
37   ClassDef(AliEMCALPi0SelectionParRec,1);
38 };
39
40
41 class AliEMCALPi0SelectionParam : public TNamed {
42  public:
43   AliEMCALPi0SelectionParam(); // default constractor
44   AliEMCALPi0SelectionParam(const AliEMCALPi0SelectionParam& param);
45   AliEMCALPi0SelectionParam(const char* name, const Int_t nrow);
46   virtual ~AliEMCALPi0SelectionParam();
47
48   AliEMCALPi0SelectionParam & operator = (const AliEMCALPi0SelectionParam  & /*rvalue*/) {
49     // assignement operator requested by coding convention but not needed
50     Fatal("operator =", "not implemented");
51     return *this;
52   };
53   // 
54   void AddAt(AliEMCALPi0SelectionParRec* r);
55   AliEMCALPi0SelectionParRec* GetTable(Int_t i) const;
56   Int_t       GetSize()  const {return fTable->GetSize();}
57   Int_t       GetNRows() const {return fCurrentInd;}
58
59  // Menu
60   void PrintTable();                 // *MENU*
61   void PrintTable(const Int_t i);    // *MENU*
62   void PrintRec(AliEMCALPi0SelectionParRec *r);
63
64   // Set of parameter(s)
65   static AliEMCALPi0SelectionParam* Set1();
66   //
67  protected:
68   TObjArray *fTable; // Table of AliEMCALPi0SelectionParRec
69   Int_t fCurrentInd; // Current index
70
71   ClassDef(AliEMCALPi0SelectionParam, 2) // Set of Parameters For Pi0 Selection     
72 };
73
74 #endif // ALIEMCALPI0SELECTIONPARAM_H