]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/global/AliFlatExternalTrackParam.h
add special constructors for restoring the vtable ptr
[u/mrichter/AliRoot.git] / HLT / global / AliFlatExternalTrackParam.h
1 #ifndef ALIFLATEXTERNALTRACKPARAM_H
2 #define ALIFLATEXTERNALTRACKPARAM_H
3
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     */
7
8 /**
9  * >> Flat structure representing parameters of an external track  <<
10  */
11
12 #include "Rtypes.h"
13 #include "AliVVexternalTrackParam.h"
14
15 class AliFlatExternalTrackParam: public AliVVexternalTrackParam
16 {
17   public:
18   AliFlatExternalTrackParam(Bool_t) {}
19   virtual ~AliFlatExternalTrackParam() {}
20   Float_t fAlpha;     // azimuthal angle of reference frame
21   Float_t fX;         // x: radial distance
22   Float_t fY;         // local Y-coordinate of a track (cm)
23   Float_t fZ;         // local Z-coordinate of a track (cm)
24   Float_t fSnp;       // local sine of the track momentum azimuthal angle
25   Float_t fTgl;       // tangent of the track momentum dip angle
26   Float_t fSigned1Pt; // 1/pt (1/(GeV/c))
27   Float_t fC[15];     // covariance matrix
28
29   void SetAlpha(Float_t alpha)             {fAlpha = alpha;}
30   void SetX(Float_t x)                     {fX = x;}
31   void SetY(Float_t y)                     {fY = y;}
32   void SetZ(Float_t z)                     {fZ = z;}
33   void SetSnp(Float_t snp)                 {fSnp = snp;}
34   void SetTgl(Float_t tgl)                 {fTgl = tgl;}
35   void SetSigned1Pt(Float_t signed1Pt)     {fSigned1Pt = signed1Pt;}
36   void SetCovEntry(Int_t idx, Float_t cov) {(idx >= 0 && idx < 15) ? fC[idx] = cov : 0.;}
37
38   Float_t  GetAlpha()             const {return fAlpha;}
39   Float_t  GetX()                 const {return fX;}
40   Float_t  GetY()                 const {return fY;}
41   Float_t  GetZ()                 const {return fZ;}
42   Float_t  GetSnp()               const {return fSnp;}
43   Float_t  GetTgl()               const {return fTgl;}
44   Float_t  GetSigned1Pt()         const {return fSigned1Pt;}
45   Float_t* GetCov()               const {return const_cast<Float_t*>(fC);}
46   Float_t  GetCovEntry(Int_t idx) const {return (idx >= 0 && idx < 15) ? fC[idx] : 0.;}
47 };
48
49 //typedef struct AliFlatExternalTrackParam AliFlatExternalTrackParam;
50
51 #endif