1 #ifndef ALIHLTTRDTRACKLET_H
2 #define ALIHLTTRDTRACKLET_H
4 #include "AliTRDseedV1.h"
5 #include "AliHLTDataTypes.h"
6 #include "AliHLTLogging.h"
7 class AliHLTTRDCluster;
9 class AliHLTTRDTracklet
13 AliHLTTRDTracklet(AliTRDseedV1* inTracklet);
15 void ExportTRDTracklet(AliTRDseedV1* outTracklet);
17 void CopyDataMembers();
18 AliHLTUInt8_t *GetEndPointer() // Returns pointer to the end of the tracklet
19 { return ((AliHLTUInt8_t *) this + fSize); };
20 AliHLTUInt32_t GetSize(){ return fSize; };
21 void Print(Bool_t printClusters = kTRUE);
22 void ReadClustersFromMemory(void *input);
25 AliHLTTRDTracklet(const AliHLTTRDTracklet&);
26 AliHLTTRDTracklet& operator=(const AliHLTTRDTracklet&);
29 AliTRDseedV1* fTRDtracklet;
30 AliHLTUInt32_t fSize; // Size of the tracklet with clusters in the memory
33 /* ======= From AliTRDseed ======== */
34 enum { knTimebins = 35 };
37 AliHLTTRDCluster *fClusters[knTimebins]; // Clusters
38 Float_t fYref[2]; // Reference y
39 Float_t fZref[2]; // Reference z
40 Float_t fSigmaY; // "Robust" sigma in Y - constant fit
41 Float_t fSigmaY2; // "Robust" sigma in Y - line fit
44 Float_t fTilt; // Tilting angle
45 Float_t fPadLength; // Pad length
46 Float_t fX0; // X0 position
47 Float_t fX[knTimebins]; //! X position
48 Float_t fY[knTimebins]; //! Y position
49 Float_t fZ[knTimebins]; //! Z position
50 Int_t fIndexes[knTimebins]; //! Indexes
51 Bool_t fUsable[knTimebins]; // Indication - usable cluster
52 Float_t fYfit[2]; // Y fit position +derivation
53 Float_t fYfitR[2]; // Y fit position +derivation
54 Float_t fZfit[2]; // Z fit position
55 Float_t fZfitR[2]; // Z fit position
56 Float_t fMeanz; // Mean vaue of z
57 Float_t fZProb; // Max probbable z
58 Int_t fLabels[2]; // Labels
59 Int_t fN; // Number of associated clusters
60 Int_t fN2; // Number of not crossed
61 Int_t fNUsed; // Number of used clusters
62 Int_t fFreq; // Frequency
63 Int_t fNChange; // Change z counter
64 Float_t fMPads; // Mean number of pads per cluster
66 Float_t fC; // Curvature
67 Float_t fCC; // Curvature with constrain
68 Float_t fChi2; // Global chi2
69 Float_t fChi2Z; // Global chi2
71 /* ======= From AliTRDseedV1 ======== */
74 Int_t fDet; // TRD detector
75 Float_t fMom; // Momentum estimate for tracklet [GeV/c]
76 Float_t fdX; // length of time bin