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