]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFtrack.h
Xcode project file addded to .gitignore
[u/mrichter/AliRoot.git] / TOF / AliTOFtrack.h
1 #ifndef ALITOFTRACK_H
2 #define ALITOFTRACK_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //----------------------------------------------------------------------------//
8 //                                                                            //
9 //   Description: class for handling ESD extracted tracks for TOF matching.   //
10 //                                                                            //
11 //----------------------------------------------------------------------------//
12
13 #include "TMath.h"
14 #include "TVector2.h"
15
16 #include "AliKalmanTrack.h"
17
18 #include "AliCluster3D.h"
19 #include "AliTOFGeometry.h"
20
21 class TObject;
22
23 class AliESDtrack;
24
25 class AliTOFtrack : public AliKalmanTrack {
26
27 public:
28
29    AliTOFtrack();
30    AliTOFtrack(const AliTOFtrack& t);
31    AliTOFtrack(const AliESDtrack& t);
32    AliTOFtrack& operator=(const AliTOFtrack &/*source*/); // ass. op.
33    AliTOFtrack& operator=(const AliESDtrack &/*source*/); // ass. op. with ESD track
34
35    Int_t    GetSector() const {
36      return Int_t(TVector2::Phi_0_2pi(GetAlpha())/AliTOFGeometry::GetAlpha())%AliTOFGeometry::NSectors();}
37
38    Int_t    GetSeedLabel() const { return fSeedLab; }
39    Int_t    GetSeedIndex() const { return fSeedInd; }
40    void     SetSeedLabel(Int_t lab) { fSeedLab=lab; }
41    void     SetSeedIndex(Int_t ind) { fSeedInd=ind; }
42   
43    Int_t Compare(const TObject *o) const;
44
45    Double_t GetYat(Double_t xk, Bool_t & skip) const;
46    Double_t GetPredictedChi2(const AliCluster3D *c) const;
47    Bool_t   PropagateTo(const AliCluster3D *c);
48    Bool_t   PropagateTo(Double_t xr, Double_t x0=8.72, Double_t rho=5.86e-3);
49    Bool_t   PropagateToInnerTOF();
50    Bool_t   PropagateToInnerTOFold();
51    Bool_t   Rotate(Double_t angle) {
52      return AliExternalTrackParam::Rotate(GetAlpha()+angle);
53    }
54
55 protected:
56    Bool_t Update(const AliCluster */*c*/, Double_t /*chi2*/, Int_t /*idx*/) {
57      return 0;
58    }
59    Double_t GetPredictedChi2(const AliCluster */*c*/) const {return 0.;}
60    
61    Int_t    fSeedInd;     // ESD seed track index  
62    Int_t    fSeedLab;     // track label taken from seeding  
63
64  private:
65
66    void GetPropagationParameters(Double_t *param);
67    
68    ClassDef(AliTOFtrack,2) // TOF reconstructed tracks
69
70 };                     
71
72 #endif