1 #ifndef AliHMPIDTracker_h
2 #define AliHMPIDTracker_h
4 #include <AliTracker.h> //base class
5 #include "AliHMPID.h" //Recon()
6 #include <AliRun.h> //Recon()
7 #include <TF1.h> //field
9 // HMPID base class fo tracking
12 class AliESDEvent; //Recon()
13 class AliESDtrack; //IntTrkCha()
14 class AliHMPIDTracker : public AliTracker
18 virtual ~AliHMPIDTracker() {delete fClu;}
20 AliCluster *GetCluster (Int_t )const {return 0;} //pure virtual from AliTracker
21 Bool_t GetTrackPoint (Int_t idx,AliTrackPoint &pt)const; // from AliTracker
22 Int_t Clusters2Tracks(AliESDEvent * ) {return 0;} //pure virtual from AliTracker
23 Int_t LoadClusters (TTree *pCluTr ); //pure virtual from AliTracker
24 Int_t PropagateBack (AliESDEvent *pEsd ); //pure virtual from AliTracker
25 Int_t RefitInward (AliESDEvent * ) {return 0;} //pure virtual from AliTracker
26 void UnloadClusters ( ) { } //pure virtual from AliTracker
28 static Int_t IntTrkCha (AliESDtrack *pTrk,Float_t &xPc,Float_t &yPc ); //find track-PC intersection, retuns chamber ID
29 static Int_t Recon (AliESDEvent *pEsd,TObjArray *pCluAll,TObjArray *pNmean=0,TObjArray *pQthre=0);//do actual job, returns status code
30 static Int_t ReconHiddenTrk(Int_t iCh,AliESDtrack *pTrk,TClonesArray *pClus,TObjArray *pNmean, TObjArray *pQthre);//do actual job with Hidden Track Algorithm
32 TObjArray *fClu; //! each chamber holds it's one list of clusters
33 ClassDef(AliHMPIDTracker,0)
34 };//class AliHMPIDTracker
35 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
38 #endif//AliHMPIDTracker_h