]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TOF/AliTOFtrack.h
Use FLUKA particle masses !
[u/mrichter/AliRoot.git] / TOF / AliTOFtrack.h
CommitLineData
74ea065c 1#ifndef ALITOFTRACK_H
2#define ALITOFTRACK_H
2c770f53 3// Description: class for handling ESD extracted tracks for TOF matching.
74ea065c 4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7#include <AliKalmanTrack.h>
8#include <TMath.h>
9#include "AliTOFGeometry.h"
10#include "TVector2.h"
11
12class AliESDtrack;
13class AliTOFtrack : public AliKalmanTrack {
14
74ea065c 15public:
16
17 AliTOFtrack():AliKalmanTrack(){}
18 AliTOFtrack(const AliTOFtrack& t);
19 AliTOFtrack(const AliESDtrack& t);
20
21
22 Double_t GetAlpha() const {return fAlpha;}
23 Int_t GetSector() const {
24 return Int_t(TVector2::Phi_0_2pi(fAlpha)/AliTOFGeometry::GetAlpha())%AliTOFGeometry::NSectors();}
25
26 Double_t GetC() const {return fC;}
2c770f53 27 void GetCovariance(Double_t cov[15]) const; // track covariance
74ea065c 28 Double_t GetEta() const {return fE;}
29
2c770f53 30 void GetExternalCovariance(Double_t cov[15]) const ;// track covariance
31 void GetExternalParameters(Double_t& xr, Double_t x[5]) const ;//track parameters
74ea065c 32 Double_t GetSigmaY2() const {return fCyy;}
33 Double_t GetSigmaZ2() const {return fCzz;}
34
2c770f53 35 Double_t Get1Pt() const {return (1e-9*TMath::Abs(fC)/fC + fC)*GetConvConst();}
74ea065c 36 Double_t GetP() const {
37 return TMath::Abs(GetPt())*sqrt(1.+GetTgl()*GetTgl());
38 }
39 Double_t GetPt() const {return 1./Get1Pt();}
40 void GetPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const ;
41 void GetGlobalXYZ(Double_t &x, Double_t &y, Double_t &z) const ;
42 Int_t GetSeedLabel() const { return fSeedLab; }
43 Int_t GetSeedIndex() const { return fSeedInd; }
44 void SetSeedLabel(Int_t lab) { fSeedLab=lab; }
45 void SetSeedIndex(Int_t ind) { fSeedInd=ind; }
46 Double_t GetSnp() const {return fX*fC - fE;}
47 Double_t GetTgl() const {return fT;}
48 Double_t GetX() const {return fX;}
49 Double_t GetY() const {return fY;}
50 Double_t GetZ() const {return fZ;}
51
52 Int_t Compare(const TObject *o) const;
53
54
2c770f53 55 Double_t GetYat(Double_t xk, Bool_t skip) const;
74ea065c 56 Int_t PropagateTo(Double_t xr, Double_t x0=8.72, Double_t rho=5.86e-3);
57 Int_t PropagateToInnerTOF(Bool_t holes);
58 void ResetCovariance();
59 void ResetCovariance(Float_t mult);
60 Int_t Rotate(Double_t angle);
61
62
63
64protected:
65
66
67 Int_t fSeedInd; // ESD seed track index
68 Int_t fSeedLab; // track label taken from seeding
69 Double_t fAlpha; // rotation angle
70 Double_t fX; // running local X-coordinate of the track (time bin)
71
72 Double_t fY; // Y-coordinate of the track
73 Double_t fZ; // Z-coordinate of the track
74 Double_t fE; // C*x0
75 Double_t fT; // tangent of the track momentum dip angle
76 Double_t fC; // track curvature
77
78 Double_t fCyy; // covariance
79 Double_t fCzy, fCzz; // matrix
80 Double_t fCey, fCez, fCee; // of the
81 Double_t fCty, fCtz, fCte, fCtt; // track
82 Double_t fCcy, fCcz, fCce, fCct, fCcc; // parameters
83
84 private:
85
86 void GetPropagationParameters(Bool_t holes, Double_t *param);
87
88 ClassDef(AliTOFtrack,0) // TOF reconstructed tracks
89
90};
91
2c770f53 92#endif