]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HBTAN/AliHBTReaderESD.h
reverting to prev.
[u/mrichter/AliRoot.git] / HBTAN / AliHBTReaderESD.h
index 239fe9d0343bf94595adf401f77eba8c8ca9acde..30731c3364e349063aad884d81f2db3dc6b77af7 100644 (file)
@@ -17,6 +17,7 @@
 class TFile;
 class AliRunLoader;
 class AliESD;
+class AliESDtrack;
 
 class AliHBTReaderESD: public AliHBTReader
 {
@@ -32,12 +33,15 @@ class AliHBTReaderESD: public AliHBTReader
     void          ReadParticles(Bool_t flag){fReadParticles = flag;}
     Bool_t        ReadsTracks() const {return kTRUE;}
     Bool_t        ReadsParticles() const {return fReadParticles;}
-    
+    void          SetCheckParticlePID(Bool_t flag){fCheckParticlePID = flag;}
+        
     void          ReadDataTPC(){}
     void          ReadDataITS(){}
 
     void          SetTPCNClustersRange(Int_t min,Int_t max);
     void          SetTPCChi2PerCluserRange(Float_t min, Float_t max);
+    
+    void          SetChi2Range(Float_t min, Float_t max);
     void          SetC00Range(Float_t min, Float_t max);
     void          SetC11Range(Float_t min, Float_t max);
     void          SetC22Range(Float_t min, Float_t max);
@@ -46,22 +50,26 @@ class AliHBTReaderESD: public AliHBTReader
     void          SetNumberOfTrackPoints(Int_t n = 5,Float_t dr = 30.0) {fNTrackPoints = n; fdR = dr;}
     Int_t         GetNumberOfTrackPoints() const {return fNTrackPoints;}
     void          SetClusterMap(Bool_t flag = kTRUE){fClusterMap = flag;}
-
+    void          SetITSTrackPoints(Bool_t flag = kTRUE){fITSTrackPoints = flag;}
+    void          MustTPC(Bool_t flag){fMustTPC = flag;}
     
     enum ESpecies {kESDElectron = 0, kESDMuon, kESDPion, kESDKaon, kESDProton, kNSpecies};
     static Int_t  GetSpeciesPdgCode(ESpecies spec);//skowron
     
     Int_t         ReadESD(AliESD* esd);
+    
   protected:
     Int_t         ReadNext();
     TFile*        OpenFile(Int_t evno);//opens files to be read for given event
-
+    Bool_t        CheckTrack(AliESDtrack* t) const;
+    
     TString       fESDFileName;//name of the file with tracks
     TString       fGAlFileName;//name of the file with tracks
     TFile*        fFile;//! pointer to current ESD file
     AliRunLoader* fRunLoader;//!Run Loader
     TIter*        fKeyIterator;
     Bool_t        fReadParticles;//flag indicating wether to read particles from kinematics
+    Bool_t        fCheckParticlePID;//flag indicating to perform the check on PID of simulated particle
     
     Int_t         fNTrackPoints;//number of track points; if==0 track points are not created
     Float_t       fdR;//spacing between points (along radius) in cm
@@ -69,7 +77,13 @@ class AliHBTReaderESD: public AliHBTReader
     
     Bool_t        fClusterMap;//Flag indicating if Claster Map should be created for each track
                               //Claster map is needed for Anti-Splitting Cut
+    
+    Bool_t        fITSTrackPoints;//Flag indicalting if track positions in ITS are to be read
+                                  //currently we use only position at first pixels wich are
+                     //used by anti-merging cut in non-id analysis
 
+    Bool_t        fMustTPC;// must be reconstructed in TPC -> reject tracks reconstructed ITS stand alone
+    
     //Cut Parameters specific to TPC tracks
         
     Int_t         fNTPCClustMin;//Number of clusters min value
@@ -80,6 +94,9 @@ class AliHBTReaderESD: public AliHBTReader
 
 
     // Required parameters at vertex
+    Float_t       fChi2Min;//Chi^2 min value
+    Float_t       fChi2Max;//Chi^2 max value
+
     Float_t       fC00Min;//C00 (0th diagonal element of covariance matrix) min value
     Float_t       fC00Max;//C00 (0th diagonal element of covariance matrix) max value