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