]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TRD/AliHLTTRDTrack.h
- load the geometry
[u/mrichter/AliRoot.git] / HLT / TRD / AliHLTTRDTrack.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 #ifndef ALIHLTTRDTRACK_H
5 #define ALIHLTTRDTRACK_H
6 //* This file is property of and copyright by the ALICE HLT Project        * 
7 //* ALICE Experiment at CERN, All rights reserved.                         *
8 //* See cxx source for full Copyright notice                               *
9
10 #include "AliTRDtrackV1.h"
11 #include "AliHLTLogging.h"
12
13 class AliHLTTRDTracklet;
14
15 class AliHLTTRDTrack
16 {
17  public:
18   AliHLTTRDTrack();
19   AliHLTTRDTrack(const AliTRDtrackV1* const inTrack);
20   ~AliHLTTRDTrack();
21
22   void CopyDataMembers(const AliTRDtrackV1* const inTrack);
23   void ExportTRDTrack(AliTRDtrackV1* const outTrack) const;
24   AliHLTUInt8_t *GetEndPointer() const // Returns pointer to the end of the track
25     { return ((AliHLTUInt8_t *) this + fSize); };
26   AliHLTUInt32_t GetSize() const {return fSize;};
27   void Print(Bool_t printTracklets = kTRUE) const;
28   static AliHLTUInt32_t SaveAt(AliHLTUInt8_t *const block, const AliTRDtrackV1* const inTrack);
29   static AliHLTUInt32_t LoadFrom(AliTRDtrackV1 *const outTrack, const AliHLTUInt8_t *const block);
30
31  private:
32   AliHLTTRDTrack(const AliHLTTRDTrack& inTrack);
33   AliHLTTRDTrack& operator=(const AliHLTTRDTrack& inTrack);
34   void InitArrays();
35
36   /* Probably need */
37   Float_t      fPID[AliPID::kSPECIES];//  PID probabilities
38   Float_t      fBudget[3];            //  Integrated material budget
39   Float_t      fDE;                   //  Integrated delta energy
40
41   /* ======== From AliKalmanTrack ======== */
42   
43   /* Defenitely need */
44   Float_t      fFakeRatio;            // fake ratio
45   Float_t      fChi2;                 // total chi2 value for this track
46   // Float_t      fMass;                 // mass hypothesis
47   // Int_t        fLab;                  // track label
48
49   /* Probably need */
50   Int_t        fN;                    // number of associated clusters
51   Float_t      fIntegratedLength;     // integrated length  // variables for time integration (S.Radomski@gsi.de)
52
53   /* ======= From AliExternalTrackParam ======== */
54
55   /* Defenitely need */
56   Float_t      fX;                    // X coordinate for the point of parametrisation
57   Float_t      fAlpha;                // Local <-->global coor.system rotation angle
58   Float_t      fP[5];                 // The track parameters
59   Float_t      fC[15];                // The track parameter covariance matrix
60
61   /* Not need */
62   //  static Float_t    fgMostProbablePt; // "Most probable" pt (to be used if Bz=0)
63
64   AliHLTUInt32_t fSize;               // Size of the track with tracklets and clusters in the memory
65   UChar_t      fBits;
66   Bool_t       fTrackletAtPlane[AliTRDtrackV1::kNplane];   // Used positions in the original array of tracklets
67
68
69 };
70
71 #endif