1 #ifndef ALITOFTRACKER_H
2 #define ALITOFTRACKER_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 // Task: Perform association of the ESD tracks to TOF Clusters
7 // and Update ESD track with associated TOF Cluster parameters
9 // -- Authors : S. Arcelli, C. Zampolli (Bologna University and INFN)
10 // -- Contacts: Annalisa.De.Caro@cern.ch
11 // -- : Chiara.Zampolli@bo.infn.it
12 // -- : Silvia.Arcelli@bo.infn.it
13 //--------------------------------------------------------------------
17 #include "TClonesArray.h"
20 #include "AliTracker.h"
22 #include "AliTOFpidESD.h"
27 class AliTOFtracker : public AliTracker {
29 enum {kMaxCluster=77777}; //maximal number of the TOF clusters
33 AliTOFtracker(AliTOFGeometry* geom, Double_t parPID[2]);
34 AliTOFtracker(const AliTOFtracker &t); //Copy Ctor
35 AliTOFtracker& operator=(const AliTOFtracker &source); // ass. op.
37 virtual ~AliTOFtracker() {delete fTOFpid;}
38 virtual Int_t Clusters2Tracks(AliESD* /*event*/) {return -1;};
39 virtual Int_t PropagateBack(AliESD* event);
40 virtual Int_t RefitInward(AliESD* /*event*/) {return -1;};
41 virtual Int_t LoadClusters(TTree * cTree); // Load Clusters
42 virtual void UnloadClusters();// UnLoad Clusters
43 virtual AliCluster *GetCluster(Int_t /*index*/) const {return NULL;};
44 Bool_t GetTrackPoint(Int_t index, AliTrackPoint& p) const;
48 Int_t FindClusterIndex(Double_t z) const; // Returns cluster index
49 void MatchTracks(Bool_t mLastStep); // Matching Algorithm
50 void CollectESD(); // Select starting Set for Matching
52 AliTOFGeometry* fGeom; // Pointer to TOF geometry
53 AliTOFpidESD* fTOFpid; // Pointer to TOF PID
54 AliTOFcluster *fClusters[kMaxCluster]; // pointers to the TOF clusters
56 Bool_t fHoles; // flag for Geometry Version(w/wo Holes)
57 Int_t fN; // Number of Clusters
58 Int_t fNseeds; // Number of track seeds
59 Int_t fNseedsTOF; // TPC BP tracks
60 Int_t fngoodmatch; // Correctly matched tracks
61 Int_t fnbadmatch; // Wrongly matched tracks
62 Int_t fnunmatch; // Unmatched tracks
63 Int_t fnmatch; // Total matched tracks
65 Float_t fR; // Intermediate radius in TOF, used in matching
66 Float_t fTOFHeigth; // Inner TOF radius for propagation
67 Float_t fdCut; // Cut on minimum distance track-pad in matching
68 Float_t fDx; // Pad Size in X
69 Float_t fDy; // Pad Size in Y (== X TOF convention)
70 Float_t fDz; // Pad Size in Z
71 Float_t fDzMax; // Upper limit in z for the size of the search window
72 Float_t fDyMax; // Upper limit in y for the size of the search window
73 TClonesArray* fTracks; //! pointer to the TClonesArray with TOF tracks
74 TClonesArray* fSeeds; //! pointer to the TClonesArray with ESD tracks
76 ClassDef(AliTOFtracker, 1) // TOF tracker