]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HBTAN/AliHBTReaderESD.h
Bug corrections
[u/mrichter/AliRoot.git] / HBTAN / AliHBTReaderESD.h
CommitLineData
7be13e68 1#ifndef ALIHBTREADERESD_H
2#define ALIHBTREADERESD_H
3
4#include "AliHBTReader.h"
5//___________________________________________________________________________
6/////////////////////////////////////////////////////////////////////////////
7// //
8// Multi file reader for ESD //
9// //
10// This reader reads tracks from Event Summary Data //
11// do not read particles //
12// Piotr.Skowronski@cern.ch //
13// more info: http://alisoft.cern.ch/people/skowron/analyzer/index.html //
14// //
15/////////////////////////////////////////////////////////////////////////////
16
17#include <TString.h>
18class TFile;
bed069a4 19class AliRunLoader;
7be13e68 20
21class AliHBTReaderESD: public AliHBTReader
22{
23 public:
bed069a4 24 AliHBTReaderESD(const Char_t* esdfilename = "AliESDs.root", const Char_t* galfilename = "galice.root");
7be13e68 25
bed069a4 26 AliHBTReaderESD(TObjArray* dirs,const Char_t* esdfilename = "AliESDs.root", const Char_t* galfilename = "galice.root");
7be13e68 27
28 virtual ~AliHBTReaderESD();
29
bed069a4 30 void Rewind();
7be13e68 31
bed069a4 32 void ReadParticles(Bool_t flag){fReadParticles = flag;}
33 Bool_t ReadsTracks() const {return kTRUE;}
34 Bool_t ReadsParticles() const {return fReadParticles;}
7be13e68 35
88378f71 36 void ReadDataTPC(){}
37 void ReadDataITS(){}
38
39 void SetTPCNClustersRange(Int_t min,Int_t max);
40 void SetTPCChi2PerCluserRange(Float_t min, Float_t max);
41 void SetC00Range(Float_t min, Float_t max);
42 void SetC11Range(Float_t min, Float_t max);
43 void SetC22Range(Float_t min, Float_t max);
44 void SetC33Range(Float_t min, Float_t max);
45 void SetC44Range(Float_t min, Float_t max);
46 void SetNumberOfTrackPoints(Int_t n = 5,Float_t dr = 30.0) {fNTrackPoints = n; fdR = dr;}
47 Int_t GetNumberOfTrackPoints() const {return fNTrackPoints;}
48 void SetClusterMap(Bool_t flag = kTRUE){fClusterMap = flag;}
49
50
7be13e68 51 enum ESpecies {kESDElectron = 0, kESDMuon, kESDPion, kESDKaon, kESDProton, kNSpecies};
bed069a4 52 static Int_t GetSpeciesPdgCode(ESpecies spec);//skowron
7be13e68 53
bed069a4 54 protected:
55 Int_t ReadNext();
56 TFile* OpenFile(Int_t evno);//opens files to be read for given event
bed069a4 57
58 TString fESDFileName;//name of the file with tracks
59 TString fGAlFileName;//name of the file with tracks
60 TFile* fFile;//! pointer to current ESD file
61 AliRunLoader* fRunLoader;//!Run Loader
88378f71 62 TIter* fKeyIterator;
bed069a4 63 Bool_t fReadParticles;//flag indicating wether to read particles from kinematics
7be13e68 64
88378f71 65 Int_t fNTrackPoints;//number of track points; if==0 track points are not created
66 Float_t fdR;//spacing between points (along radius) in cm
67 //Track Points are needed for Anti-Merging Cut
68
69 Bool_t fClusterMap;//Flag indicating if Claster Map should be created for each track
70 //Claster map is needed for Anti-Splitting Cut
71
72 //Cut Parameters specific to TPC tracks
73
74 Int_t fNTPCClustMin;//Number of clusters min value
75 Int_t fNTPCClustMax;//Number of clusters max value
76
77 Float_t fTPCChi2PerClustMin;//Chi^2 per number of clusters min value
78 Float_t fTPCChi2PerClustMax;//Chi^2 per number of clusters max value
79
80
81 // Required parameters at vertex
82 Float_t fC00Min;//C00 (0th diagonal element of covariance matrix) min value
83 Float_t fC00Max;//C00 (0th diagonal element of covariance matrix) max value
84
85 Float_t fC11Min;//C11 (1th diagonal element of covariance matrix) min value
86 Float_t fC11Max;//C11 (1th diagonal element of covariance matrix) max value
87
88 Float_t fC22Min;//C22 (2th diagonal element of covariance matrix) min value
89 Float_t fC22Max;//C22 (2th diagonal element of covariance matrix) max value
90
91 Float_t fC33Min;//C33 (3th diagonal element of covariance matrix) min value
92 Float_t fC33Max;//C33 (3th diagonal element of covariance matrix) max value
93
94 Float_t fC44Min;//C44 (4th diagonal element of covariance matrix) min value
95 Float_t fC44Max;//C44 (4th diagonal element of covariance matrix) max value
96
97 // Required parameters at TPC Inner Layer
98 Float_t fTPCC00Min;//C00 (0th diagonal element of covariance matrix) min value
99 Float_t fTPCC00Max;//C00 (0th diagonal element of covariance matrix) max value
100
101 Float_t fTPCC11Min;//C11 (1th diagonal element of covariance matrix) min value
102 Float_t fTPCC11Max;//C11 (1th diagonal element of covariance matrix) max value
103
104 Float_t fTPCC22Min;//C22 (2th diagonal element of covariance matrix) min value
105 Float_t fTPCC22Max;//C22 (2th diagonal element of covariance matrix) max value
106
107 Float_t fTPCC33Min;//C33 (3th diagonal element of covariance matrix) min value
108 Float_t fTPCC33Max;//C33 (3th diagonal element of covariance matrix) max value
109
110 Float_t fTPCC44Min;//C44 (4th diagonal element of covariance matrix) min value
111 Float_t fTPCC44Max;//C44 (4th diagonal element of covariance matrix) max value
112
7be13e68 113 private:
bed069a4 114 ClassDef(AliHBTReaderESD,2)
7be13e68 115};
116
117
118#endif