]>
Commit | Line | Data |
---|---|---|
586f2bc3 | 1 | #ifndef ALIJETAODREADER_H |
2 | #define ALIJETAODREADER_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 AOD Reader | |
9 | // AOD reader for jet analysis | |
10 | // Author: Davide Perrino (davide.perrino@cern.ch) | |
11 | //--------------------------------------------------------------------- | |
12 | ||
13 | #include "AliJetReader.h" | |
be6e5811 | 14 | #include "AliJetUnitArray.h" |
15 | #include "AliJetGrid.h" | |
16 | class AliJetUnitArray; | |
17 | class AliJetDummyGeo; | |
18 | class AliJetHadronCorrection; | |
586f2bc3 | 19 | class AliJetAODReaderHeader; |
20 | class AliJetReaderHeader; | |
21 | class AliAODEvent; | |
22 | class TRefArray; | |
23 | ||
24 | class AliJetAODReader : public AliJetReader | |
25 | { | |
26 | public: | |
27 | AliJetAODReader(); | |
28 | virtual ~AliJetAODReader(); | |
29 | ||
30 | TRefArray* GetReferences() const {return fRef;} | |
31 | ||
9e4cc50d | 32 | Bool_t FillMomentumArray(); |
586f2bc3 | 33 | void OpenInputFiles(); |
34 | void ConnectTree(TTree* tree, TObject* data); | |
be6e5811 | 35 | void InitUnitArray(); |
36 | void CreateTasks(TChain* tree); | |
37 | Bool_t ExecTasks(Bool_t procid, TRefArray* refArray); | |
38 | ||
39 | void SetInputEvent(TObject* /*esd*/, TObject* aod, TObject* /*mc*/) {fAOD = (AliAODEvent*) aod;} | |
40 | void SetTPCGrid(AliJetGrid *grid) {fTpcGrid = grid;} | |
41 | void SetEMCalGrid(AliJetGrid *grid) {fEmcalGrid = grid;} | |
42 | // Correction of hadronic energy | |
43 | void SetHadronCorrection(Int_t flag = 1) {fHCorrection = flag;} | |
44 | void SetHadronCorrector(AliJetHadronCorrection* corr) {fHadCorr = corr;} | |
45 | void SetApplyElectronCorrection(Int_t flag = 1) {fECorrection = flag; fEFlag=kTRUE;} | |
46 | void SetApplyMIPCorrection(Bool_t val); | |
47 | void SetApplyFractionHadronicCorrection(Bool_t val); | |
48 | void SetFractionHadronicCorrection(Double_t val); | |
49 | ||
50 | ||
9e4cc50d | 51 | private: |
be6e5811 | 52 | Bool_t SetEMCALGeometry(); |
53 | void InitParameters(); | |
9e4cc50d | 54 | AliJetAODReader(const AliJetAODReader &det); |
55 | AliJetAODReader &operator=(const AliJetAODReader &det); | |
586f2bc3 | 56 | |
57 | private: | |
58 | TChain *fChain; //! chain for reconstructed tracks | |
be6e5811 | 59 | TChain *fTree; //! tree to get the EMCal geometry |
586f2bc3 | 60 | AliAODEvent *fAOD; //! pointer to aod |
be6e5811 | 61 | TRefArray *fRef; // pointer to array of references to tracks |
586f2bc3 | 62 | Int_t fDebug; // Debug option |
63 | Int_t fOpt; // Detector to be used for jet reconstruction | |
be6e5811 | 64 | AliJetDummyGeo *fGeom; //! EMCAL Geometry |
65 | ||
66 | AliJetHadronCorrection *fHadCorr; //! Pointer to Hadron Correction Object | |
67 | AliJetGrid *fTpcGrid; //! Pointer to grid object | |
68 | AliJetGrid *fEmcalGrid; //! Pointer to grid object | |
69 | AliJetGrid *fGrid0; // Pointer to grid object | |
70 | AliJetGrid *fGrid1; // Pointer to grid object | |
71 | AliJetGrid *fGrid2; // Pointer to grid object | |
72 | AliJetGrid *fGrid3; // Pointer to grid object | |
73 | AliJetGrid *fGrid4; // Pointer to grid object | |
74 | Float_t fPtCut; // Pt cut for tracks to minimise background contribution | |
75 | Int_t fHCorrection; // Hadron correction flag | |
76 | Int_t fApplyElectronCorrection; // Electron correction flag | |
77 | Bool_t fEFlag; // if (fEFlag == kFALSE) => fECorrection automatically setted | |
78 | Bool_t fApplyMIPCorrection; // Apply MIP or not ? Exclusive with fApplyFractionHadronicCorrection | |
79 | Bool_t fApplyFractionHadronicCorrection; // Another type of charged particle energy deposition in EMC | |
80 | Double_t fFractionHadronicCorrection; // Fraction of momentum of the TPC track to be subtracted from EMC tower | |
81 | Int_t fNumUnits; // Number of units in the unit object array | |
82 | // (same as num towers in EMCAL) | |
83 | Float_t fMass; // Particle mass | |
84 | Int_t fSign; // Particle sign | |
85 | Int_t fNIn; // Number of Array filled in UnitArray | |
86 | Bool_t fDZ; // Use or not dead zones | |
87 | Int_t fNeta; // Number of bins in eta of tpc grid | |
88 | Int_t fNphi; // Number of bins in phi of tpc grid | |
89 | Bool_t fArrayInitialised; // To check that array of units is initialised | |
90 | ||
91 | TRefArray *fRefArray; // array of digit position and energy | |
92 | Bool_t fProcId; // Bool_t for TProcessID synchronization | |
93 | ||
94 | ||
586f2bc3 | 95 | ClassDef(AliJetAODReader,1) |
96 | }; | |
97 | ||
98 | #endif |