]>
Commit | Line | Data |
---|---|---|
4a01bb2c | 1 | #ifndef ALIJETFILLUNITARRAYTRACKS_H |
2 | #define ALIJETFILLUNITARRAYTRACKS_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 | #include <TMatrixD.h> | |
18 | #include <TArrayD.h> | |
19 | ||
4a01bb2c | 20 | class AliJetHadronCorrection; |
21 | class AliJetReader; | |
22 | class AliJetESDReader; | |
23 | class TClonesArray; | |
ee7de0dd | 24 | class TRefArray; |
4a01bb2c | 25 | class AliJetGrid; |
ee7de0dd | 26 | class AliJetDummyGeo; |
27 | class AliESD; | |
28 | class AliESDEvent; | |
4a01bb2c | 29 | |
30 | class AliJetFillUnitArrayTracks : public TTask | |
31 | { | |
32 | public: | |
33 | AliJetFillUnitArrayTracks(); | |
a1fa3a77 | 34 | //PH AliJetFillUnitArrayTracks(AliESD *fESD); |
ee7de0dd | 35 | AliJetFillUnitArrayTracks(AliESDEvent *fESD); |
4a01bb2c | 36 | virtual ~AliJetFillUnitArrayTracks(); |
37 | ||
38 | // Setter | |
39 | void SetReaderHeader(AliJetReaderHeader *readerHeader) {fReaderHeader = readerHeader;} | |
ee7de0dd | 40 | void SetGeom(AliJetDummyGeo *geom) {fGeom = geom;} |
4a01bb2c | 41 | void SetMomentumArray(TClonesArray *momentumArray) {fMomentumArray = momentumArray;} |
ee7de0dd | 42 | void SetUnitArray(TClonesArray *unitArray) {fUnitArray = unitArray;} |
43 | void SetRefArray(TRefArray *refArray) {fRefArray = refArray;} | |
4a01bb2c | 44 | void SetHadCorrection(Int_t flag = 1) {fHCorrection = flag;} |
45 | void SetHadCorrector(AliJetHadronCorrectionv1* corr) {fHadCorr = corr;} | |
46 | void SetTPCGrid(AliJetGrid *grid) {fTPCGrid = grid;} | |
47 | void SetEMCalGrid(AliJetGrid *grid) {fEMCalGrid = grid;} | |
a1fa3a77 | 48 | //PH void SetGrid(Double_t phiMin,Double_t phiMax,Double_t etaMin,Double_t etaMax); |
ee7de0dd | 49 | // void SetESD(AliESD *esd) {fESD = esd;} |
50 | void SetESD(AliESDEvent *esd) {fESD = esd;} | |
51 | void SetGrid0(AliJetGrid *grid0){fGrid0 = grid0;} | |
52 | void SetGrid1(AliJetGrid *grid1){fGrid1 = grid1;} | |
53 | void SetGrid2(AliJetGrid *grid2){fGrid2 = grid2;} | |
54 | void SetGrid3(AliJetGrid *grid3){fGrid3 = grid3;} | |
55 | void SetGrid4(AliJetGrid *grid4){fGrid4 = grid4;} | |
4a01bb2c | 56 | |
57 | // Getter | |
ee7de0dd | 58 | TClonesArray* GetUnitArray() {return fUnitArray;} |
59 | TRefArray* GetRefArray() {return fRefArray;} | |
60 | // Int_t GetIndexFromEtaPhi(Double_t eta,Double_t phi) const; | |
61 | void GetEtaPhiFromIndex(Int_t index,Float_t &eta,Float_t &phi); | |
4399a17e | 62 | Int_t GetNeta() const {return fNeta;} |
63 | Int_t GetNphi() const {return fNphi;} | |
64 | Int_t GetHadCorrection() const {return fHCorrection;} | |
65 | Int_t GetMult() const {return fNTracks;} | |
66 | Int_t GetMultCut() const {return fNTracksCut;} | |
ee7de0dd | 67 | void Exec(Option_t*); |
4a01bb2c | 68 | |
69 | protected: | |
70 | Int_t fNumUnits; // Number of units in the unit object array (same as num towers in EMCAL) | |
71 | Float_t fEtaMinCal; // Define EMCal acceptance in Eta | |
72 | Float_t fEtaMaxCal; // Define EMCal acceptance in Eta | |
73 | Float_t fPhiMinCal; // Define EMCal acceptance in Phi | |
74 | Float_t fPhiMaxCal; // Define EMCal acceptance in Phi | |
75 | AliJetHadronCorrectionv1 *fHadCorr; // Pointer to Hadron Correction Object | |
ee7de0dd | 76 | Int_t fHCorrection; // Hadron correction flag |
77 | Int_t fNTracks; // Number of tracks stored in UnitArray | |
78 | Int_t fNTracksCut; // Number of tracks stored in UnitArray with a pt cut | |
4a01bb2c | 79 | Int_t fOpt; // Detector to be used for jet reconstruction |
ee7de0dd | 80 | Bool_t fDZ; // Use or not dead zones |
4a01bb2c | 81 | Int_t fDebug; // Debug option |
82 | ||
83 | AliJetReaderHeader *fReaderHeader; // ReaderHeader | |
84 | TClonesArray *fMomentumArray; // MomentumArray | |
ee7de0dd | 85 | TClonesArray *fUnitArray; // UnitArray |
86 | TRefArray *fRefArray; // UnitArray | |
4a01bb2c | 87 | AliJetGrid *fTPCGrid; // Define filled grid |
88 | AliJetGrid *fEMCalGrid; // Define filled grid | |
ee7de0dd | 89 | AliJetDummyGeo *fGeom; // Define EMCal geometry |
ee7de0dd | 90 | AliESDEvent *fESD; // ESD |
4399a17e | 91 | AliJetGrid *fGrid0; // Pointer to Grid 1 |
92 | AliJetGrid *fGrid1; // Pointer to Grid 2 | |
93 | AliJetGrid *fGrid2; // Pointer to Grid 3 | |
94 | AliJetGrid *fGrid3; // Pointer to Grid 4 | |
95 | AliJetGrid *fGrid4; // Pointer to Grid 5 | |
4a01bb2c | 96 | |
97 | Int_t fNphi; // number of points in the grid: phi | |
98 | Int_t fNeta; // " eta | |
99 | TArrayD* fPhi2; // grid points in phi | |
100 | TArrayD* fEta2; // grid points in eta | |
101 | TArrayD* fPhi; // grid points in phi | |
102 | TArrayD* fEta; // grid points in eta | |
103 | TMatrixD* fIndex; // grid points in (phi,eta) | |
104 | TMatrixD* fParams; // matrix of parameters in the grid points | |
105 | Int_t fGrid; // Select the grid acceptance you want to fill | |
106 | // 0 = TPC acceptance, 1 = TPC-EMCal acceptance | |
4399a17e | 107 | Float_t fPhiMin; // minimum phi |
108 | Float_t fPhiMax; // maximum phi | |
109 | Float_t fEtaMin; // minimum eta | |
110 | Float_t fEtaMax; // maximum eta | |
111 | Int_t fEtaBinInTPCAcc; // eta bins in tpc acceptance | |
112 | Int_t fPhiBinInTPCAcc; // phi bins in tpc acceptance | |
113 | Int_t fEtaBinInEMCalAcc; // eta bins in emcal acceptance | |
114 | Int_t fPhiBinInEMCalAcc; // phi bins in emcal acceptance | |
115 | Int_t fNbinPhi; // number of phi bins | |
4a01bb2c | 116 | |
117 | private: | |
a1fa3a77 | 118 | AliJetFillUnitArrayTracks(const AliJetFillUnitArrayTracks &det); |
119 | AliJetFillUnitArrayTracks &operator=(const AliJetFillUnitArrayTracks &det); | |
ee7de0dd | 120 | // void SetEMCALGeometry(); |
4a01bb2c | 121 | void InitParameters(); |
122 | ||
4a01bb2c | 123 | ClassDef(AliJetFillUnitArrayTracks,1) // Fill Unit Array with tpc and/or emcal information |
124 | }; | |
125 | ||
126 | #endif |