correcting coding rule violations (Christoph)
[u/mrichter/AliRoot.git] / HLT / TRD / AliHLTTRDTrack.h
1 #ifndef ALIHLTTRDTRACK_H
2 #define ALIHLTTRDTRACK_H
3
4 #include "AliESDtrack.h"
5 #include "AliTRDtrackV1.h"
6 #include "AliHLTLogging.h"
7 class AliHLTTRDTracklet;
8
9
10 class AliHLTTRDTrack
11 {
12  public:
13   AliHLTTRDTrack();
14   ~AliHLTTRDTrack();
15   AliHLTTRDTrack( AliTRDtrackV1* inTrack);
16
17   void AddTracklets();
18   void CopyDataMembers();
19   void ExportTRDTrack(AliTRDtrackV1* outTrack);
20   AliHLTUInt8_t *GetEndPointer() // Returns pointer to the end of the track
21     { return ((AliHLTUInt8_t *) this + fSize); };
22   AliHLTUInt32_t GetSize(){return fSize;};
23   void Print(Bool_t printTracklets = kTRUE);
24   void ReadTrackletsFromMemory(void* );
25   
26  private:
27   AliHLTTRDTrack(const AliHLTTRDTrack& inTrack);
28   AliHLTTRDTrack& operator=(const AliHLTTRDTrack& inTrack);
29   void InitArrays();
30   
31   AliHLTUInt32_t fSize; // Size of the track with tracklets and clusters in the memory
32   AliTRDtrackV1* fTRDtrack;
33   
34   /* ======== From AliTRDtrackV1 ======== */
35     enum { kNdet      = 540
36         , kNstacks   =  90
37         , kNplane    =   AliESDtrack::kTRDnPlanes
38         , kNcham     =   5
39         , kNsect     =  18
40         , kNslice    =   3
41         , kNMLPslice =   8 };
42
43   /* Defenitely need */
44   UChar_t      fPIDquality;           //  No of planes used for PID calculation 
45   AliHLTTRDTracklet *fTracklet[kNplane];   //  Tracklets array defining the track
46   
47   /* Probably need */
48   Double32_t   fPID[AliPID::kSPECIES];//  PID probabilities
49   Double32_t   fBudget[3];            //  Integrated material budget
50   Double32_t   fDE;                   //  Integrated delta energy
51
52   /* ======== From AliKalmanTrack ======== */
53   
54   /* Defenitely need */
55   Double32_t fFakeRatio;  // fake ratio
56   Double32_t fChi2;       // total chi2 value for this track
57   Double32_t fMass;       // mass hypothesis
58   Int_t fLab;             // track label
59
60   /* Probably need */
61   Int_t fN;               // number of associated clusters
62   Double32_t fIntegratedLength;        // integrated length  // variables for time integration (S.Radomski@gsi.de)
63
64   /* ======= From AliExternalTrackParam ======== */
65
66   /* Defenitely need */
67   Double32_t           fX;     // X coordinate for the point of parametrisation
68   Double32_t           fAlpha; // Local <-->global coor.system rotation angle
69   Double32_t           fP[5];  // The track parameters
70   Double32_t           fC[15]; // The track parameter covariance matrix
71
72   /* Probably need */
73   //  static Double32_t    fgMostProbablePt; // "Most probable" pt (to be used if Bz=0)
74
75 };
76
77 #endif