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
27 void FillClusterArray(TObjArray* array) const; // from AliTracker
29 static Int_t IntTrkCha (AliESDtrack *pTrk,Float_t &xPc,Float_t &yPc,Float_t &xRa,Float_t &yRa,Float_t &theta,Float_t &phi);//find track-PC intersection, retuns chamber ID
30 static Int_t Recon (AliESDEvent *pEsd,TObjArray *pCluAll,TObjArray *pNmean=0,TObjArray *pQthre=0);//do actual job, returns status code
31 static Int_t ReconHiddenTrk(Int_t iCh,Int_t iHVsec,AliESDtrack *pTrk,TClonesArray *pClus,TObjArray *pNmean, TObjArray *pQthre);//do actual job with Hidden Track Algorithm
34 TObjArray *fClu; //! each chamber holds it's one list of clusters
37 AliHMPIDTracker(const AliHMPIDTracker& r); //dummy copy constructor
38 AliHMPIDTracker &operator=(const AliHMPIDTracker& r); //dummy assignment operator
40 ClassDef(AliHMPIDTracker,0)
41 };//class AliHMPIDTracker
42 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
45 #endif//AliHMPIDTracker_h