Warnings corrected.
[u/mrichter/AliRoot.git] / JETAN / AliJetFillUnitArrayEMCalDigits.h
1 #ifndef ALIJETFILLUNITARRAYEMCALDIGITS_H
2 #define ALIJETFILLUNITARRAYEMCALDIGITS_H
3  
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6  
7 //---------------------------------------------------------------------
8 // Jet Fill Unit Array 
9 // Called by ESD Reader for jet analysis
10 // Author: Magali Estienne (magali.estienne@subatech.in2p3.fr)
11 //---------------------------------------------------------------------
12
13 #ifndef ROOT_TTask
14 #include "TTask.h"
15 #endif
16
17 class AliJetDummyGeo;
18 class AliESDCaloCluster;
19 class AliEMCALCalibData;
20 class AliJetReader;
21 class AliJetESDReader;
22 class TClonesArray;
23 class TRefArray;
24 class AliJetUnitArray;
25 //class AliESD;
26 class AliESDEvent;
27 class AliJetGrid;
28
29 class AliJetFillUnitArrayEMCalDigits : public TTask
30 {
31  public: 
32   AliJetFillUnitArrayEMCalDigits();
33   AliJetFillUnitArrayEMCalDigits(Int_t event);
34   AliJetFillUnitArrayEMCalDigits(AliESD *fESD);
35   AliJetFillUnitArrayEMCalDigits(AliESDEvent *fESD);
36   virtual ~AliJetFillUnitArrayEMCalDigits();
37   
38   // Setter
39   void SetReaderHeader(AliJetReaderHeader *readerHeader) {fReaderHeader = readerHeader;}
40   void SetGeom(AliJetDummyGeo *geom) {fGeom = geom;}
41   void SetMomentumArray(TClonesArray *momentumArray) {fMomentumArray = momentumArray;}
42   void SetUnitArray(TClonesArray *unitArray) {fUnitArray = unitArray;}
43   void SetRefArray(TRefArray *refArray) {fRefArray = refArray;}
44   void SetTPCGrid(AliJetGrid *grid) {fTPCGrid = grid;}
45   void SetEMCalGrid(AliJetGrid *grid) {fEMCalGrid = grid;}
46   //  void SetESD(AliESD *esd) {fESD = esd;}
47   void SetESD(AliESDEvent *esd) {fESD = esd;}
48   void SetInitMult(Int_t mult) {fNDigitEmcal = mult;}
49   void SetInitMultCut(Int_t multcut) {fNDigitEmcalCut = multcut;}
50
51   // Getter
52   TClonesArray* GetUnitArray() {return fUnitArray;}
53   TRefArray*    GetRefArray()  {return fRefArray;}
54   Int_t         GetMult()      {return fNDigitEmcal;}
55   Int_t         GetMultCut()   {return fNDigitEmcalCut;}
56
57   // Other
58   void          Exec(Option_t*);
59   Float_t       EtaToTheta(Float_t arg);
60  private:
61   AliJetFillUnitArrayEMCalDigits(const AliJetFillUnitArrayEMCalDigits &det);
62   AliJetFillUnitArrayEMCalDigits &operator=(const AliJetFillUnitArrayEMCalDigits &det);
63
64   void InitParameters();
65
66  protected:
67   AliESDEvent  *fESD; // ESD
68   Int_t   fNumUnits;  // Number of units in the unit object array (same as num towers in EMCAL)
69   Float_t fEtaMinCal; // Define EMCAL acceptance in Eta
70   Float_t fEtaMaxCal; // Define EMCAL acceptance in Eta
71   Float_t fPhiMinCal; // Define EMCAL acceptance in Phi
72   Float_t fPhiMaxCal; // Define EMCAL acceptance in Phi
73   Int_t   fNIn;       // Number of Array filled in UnitArray
74   Int_t   fOpt;       // Detector to be used for jet reconstruction
75   Int_t   fDebug;     // Debug option
76   Int_t   fNCEMCAL;   // Number of clusters in EMCAL
77   Int_t   fNCPHOS;    // Number of clusters in PHOS
78   Int_t   fNCCalo;    // Number of cluster in EMCAL + PHOS calorimeters
79
80   AliJetGrid         *fTPCGrid;           // Define filled grid
81   AliJetGrid         *fEMCalGrid;         // Define filled grid
82
83   AliJetReaderHeader *fReaderHeader;      // ReaderHeader
84   TClonesArray       *fMomentumArray;     // MomentumArray
85   TClonesArray       *fUnitArray;         // UnitArray
86   TRefArray          *fRefArray;          // UnitArray
87   AliJetDummyGeo     *fGeom;              // Set EMCal geometry
88   
89   AliESDCaloCluster *fClus;               //! 
90   Int_t fNDigitEmcal;                     //!
91   Int_t fNDigitEmcalCut;                  //!
92
93   
94
95   ClassDef(AliJetFillUnitArrayEMCalDigits,1) // Fill Unit Array with tpc and/or emcal information
96 };
97
98 #endif