]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/BASE/AliHLTExternalTrackParam.h
adding first version of common HLT track data struct for barrel tracks
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTExternalTrackParam.h
1 // $Id$
2 //* This file is property of and copyright by the ALICE HLT Project        * 
3 //* ALICE Experiment at CERN, All rights reserved.                         *
4 //* See cxx source for full Copyright notice                               *
5
6 #ifndef _ALIHLTEXTERNALTRACKPARAM_H_
7 #define _ALIHLTEXTERNALTRACKPARAM_H_
8
9 #include "AliHLTStdIncludes.h"
10
11 /**
12  * @struct AliHLTExternalTrackParam
13  * This in a struct for tracks which are closer to the format used by offline.
14  * The offline parametrisation we find in AliExternalTrackParam class.
15  * The covariance matrix is in Double_t since this is the format in AliExternalTrackParam.
16  * This saves time in translating from Float_t to Double_t. The other values has to be copied 
17  * anyway, so these can be Float_t for saveing space.The charge is now removed and the Pt has a sign.
18  *
19  * @ingroup alihlt_component_datatypes
20  */
21 struct AliHLTExternalTrackParam
22     {
23       Float_t fX;
24       Float_t fY;
25       Float_t fZ;
26       Float_t fLastX;
27       Float_t fLastY;
28       Float_t fLastZ;
29       Float_t fq1Pt;
30       Float_t fSinPsi;
31       Float_t fTgl;
32       Double_t fC[15];
33       UInt_t  fNPoints;
34 #if defined(__HP_aCC) || defined(__DECCXX) || defined(__SUNPRO_CC)
35       UInt_t  fPointIDs[1];
36 #else
37       UInt_t  fPointIDs[0];
38 #endif
39      };
40
41 typedef struct AliHLTExternalTrackParam AliHLTExternalTrackParam;
42
43 struct AliHLTTracksData {
44         AliHLTUInt32_t fCount;
45 #if defined(__HP_aCC) || defined(__DECCXX) || defined(__SUNPRO_CC)
46         AliHLTExternalTrackParam fTracklets[1];
47 #else
48         AliHLTExternalTrackParam fTracklets[];
49 #endif
50 };
51
52 typedef struct AliHLTTracksData AliHLTTracksData;
53
54 #endif