1 #ifndef ALIFLATEXTERNALTRACKPARAM_H
2 #define ALIFLATEXTERNALTRACKPARAM_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice *
6 * Primary Authors : Sergey Gorbunov, Jochen Thaeder, Chiara Zampolli */
9 * >> Flat structure representing parameters of an external track <<
13 #include "AliVVexternalTrackParam.h"
14 #include "AliFlatESDMisc.h"
17 class AliFlatExternalTrackParam: public AliVVexternalTrackParam
20 AliFlatExternalTrackParam() {}
21 virtual ~AliFlatExternalTrackParam() {}
22 Float_t fAlpha; // azimuthal angle of reference frame
23 Float_t fX; // x: radial distance
24 Float_t fY; // local Y-coordinate of a track (cm)
25 Float_t fZ; // local Z-coordinate of a track (cm)
26 Float_t fSnp; // local sine of the track momentum azimuthal angle
27 Float_t fTgl; // tangent of the track momentum dip angle
28 Float_t fSigned1Pt; // 1/pt (1/(GeV/c))
29 Float_t fC[15]; // covariance matrix
31 void SetAlpha(Float_t alpha) {fAlpha = alpha;}
32 void SetX(Float_t x) {fX = x;}
33 void SetY(Float_t y) {fY = y;}
34 void SetZ(Float_t z) {fZ = z;}
35 void SetSnp(Float_t snp) {fSnp = snp;}
36 void SetTgl(Float_t tgl) {fTgl = tgl;}
37 void SetSigned1Pt(Float_t signed1Pt) {fSigned1Pt = signed1Pt;}
38 void SetCovEntry(Int_t idx, Float_t cov) {(idx >= 0 && idx < 15) ? fC[idx] = cov : 0.;}
41 new (this) AliFlatExternalTrackParam(AliFlatESDReinitialize);
44 Float_t GetAlpha() const {return fAlpha;}
45 Float_t GetX() const {return fX;}
46 Float_t GetY() const {return fY;}
47 Float_t GetZ() const {return fZ;}
48 Float_t GetSnp() const {return fSnp;}
49 Float_t GetTgl() const {return fTgl;}
50 Float_t GetSigned1Pt() const {return fSigned1Pt;}
51 Float_t* GetCov() const {return const_cast<Float_t*>(fC);}
52 Float_t GetCovEntry(Int_t idx) const {return (idx >= 0 && idx < 15) ? fC[idx] : 0.;}
55 AliFlatExternalTrackParam(AliFlatESDSpecialConstructorFlag){}
58 //typedef struct AliFlatExternalTrackParam AliFlatExternalTrackParam;