]> git.uio.no Git - u/mrichter/AliRoot.git/blame - JETAN/AliJetESDReader.h
Coding violations corrected.
[u/mrichter/AliRoot.git] / JETAN / AliJetESDReader.h
CommitLineData
99e5fe42 1#ifndef ALIJETESDREADER_H
2#define ALIJETESDREADER_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
83a444b1 7//---------------------------------------------------------------------
99e5fe42 8// Jet ESD Reader
9// ESD reader for jet analysis
10// Author: Mercedes Lopez Noriega (mercedes.lopez.noriega@cern.ch)
b45b0c92 11//=========================================================================
12// Modified in order to use a fUnitArray object instead of a fMomentumArray
13// Includes EMCal Geometry, fUnitArray, grid objects and tools for Hadron correction
8838ab7a 14// Author : magali.estienne@subatech.in2p3.fr
83a444b1 15//---------------------------------------------------------------------
99e5fe42 16
17#include "AliJetReader.h"
b45b0c92 18#include "AliJetUnitArray.h"
19#include "AliJetGrid.h"
8838ab7a 20
21class TRefArray;
99e5fe42 22class AliJetESDReaderHeader;
8838ab7a 23class AliEMCALGeometry;
5b81d1ce 24class AliJetDummyGeo;
b45b0c92 25class AliJetHadronCorrection;
26class AliJetUnitArray;
27class AliJetReaderHeader;
1b307662 28class AliESDEvent;
99e5fe42 29
30class AliJetESDReader : public AliJetReader
31{
32 public:
33 AliJetESDReader();
34 virtual ~AliJetESDReader();
ee7de0dd 35
8838ab7a 36 Bool_t FillMomentumArray();
37 void OpenInputFiles();
38 void InitUnitArray();
39 void CreateTasks(TChain* tree);
40 Bool_t ExecTasks(Bool_t procid, TRefArray* refArray);
ee7de0dd 41
8838ab7a 42 // Getters
43 Float_t GetTrackMass() const {return fMass;} // returns mass of the track
44 Int_t GetTrackSign() const {return fSign;} // returns sign of the track
45
99e5fe42 46 // Setters
8838ab7a 47 void SetInputEvent(TObject* esd, TObject* aod, TObject* mc);
48 void SetTPCGrid(AliJetGrid *grid) {fTpcGrid = grid;}
49 void SetEMCalGrid(AliJetGrid *grid) {fEmcalGrid = grid;}
b45b0c92 50 // Correction of hadronic energy
be6e5811 51 void SetHadronCorrector(AliJetHadronCorrection* corr) {fHadCorr = corr;}
52 void SetApplyElectronCorrection(Int_t flag = 1) {fECorrection = flag; fEFlag=kTRUE;}
53 void SetApplyMIPCorrection(Bool_t val);
54 void SetApplyFractionHadronicCorrection(Bool_t val);
55 void SetFractionHadronicCorrection(Double_t val);
9e4cc50d 56
99e5fe42 57 protected:
19e6695b 58 AliJetDummyGeo *fGeom; //! EMCAL Geometry
eaabc21f 59 TChain *fChain; //! chain for reconstructed tracks
be6e5811 60 TChain *fTree; //! tree to get the EMCal geometry
1b307662 61 AliESDEvent *fESD; //! pointer to esd
be6e5811 62 AliJetHadronCorrection *fHadCorr; //! Pointer to Hadron Correction Object
19e6695b 63 AliJetGrid *fTpcGrid; //! Pointer to grid object
64 AliJetGrid *fEmcalGrid; //! Pointer to grid object
ee7de0dd 65 AliJetGrid *fGrid0; // Pointer to grid object
66 AliJetGrid *fGrid1; // Pointer to grid object
67 AliJetGrid *fGrid2; // Pointer to grid object
68 AliJetGrid *fGrid3; // Pointer to grid object
69 AliJetGrid *fGrid4; // Pointer to grid object
b45b0c92 70 Float_t fPtCut; // Pt cut for tracks to minimise background contribution
be6e5811 71 Int_t fApplyElectronCorrection; // Electron correction flag
8838ab7a 72 Bool_t fEFlag; // if (fEFlag == kFALSE) => fECorrection automatically setted
be6e5811 73 Bool_t fApplyMIPCorrection; // Apply MIP or not ? Exclusive with fApplyFractionHadronicCorrection
74 Bool_t fApplyFractionHadronicCorrection; // Another type of charged particle energy deposition in EMC
75 Double_t fFractionHadronicCorrection; // Fraction of momentum of the TPC track to be subtracted from EMC tower
b45b0c92 76 Int_t fNumUnits; // Number of units in the unit object array
77 // (same as num towers in EMCAL)
8838ab7a 78 Int_t fDebug; //! Debug option
79 Float_t fMass; // Particle mass
80 Int_t fSign; // Particle sign
b45b0c92 81 Int_t fNIn; // Number of Array filled in UnitArray
82 Int_t fOpt; // Detector to be used for jet reconstruction
ee7de0dd 83 Bool_t fDZ; // Use or not dead zones
b45b0c92 84 Int_t fNeta; // Number of bins in eta of tpc grid
85 Int_t fNphi; // Number of bins in phi of tpc grid
86 Bool_t fArrayInitialised; // To check that array of units is initialised
8838ab7a 87 TRefArray *fRefArray; // array of digit position and energy
88 Bool_t fProcId; // Bool_t for TProcessID synchronization
89
90 private:
91 Bool_t SetEMCALGeometry();
92 void InitParameters();
93 AliJetESDReader(const AliJetESDReader &det);
94 AliJetESDReader &operator=(const AliJetESDReader &det);
95
96
97
99e5fe42 98 ClassDef(AliJetESDReader,1)
99};
100
101#endif