]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TRD/AliHLTTRDTracklet.h
- add new calibration in the reconstruction macro (Theo)
[u/mrichter/AliRoot.git] / HLT / TRD / AliHLTTRDTracklet.h
CommitLineData
93ce7d1b 1//-*- Mode: C++ -*-
2// $Id$
3
d679dd6c 4#ifndef ALIHLTTRDTRACKLET_H
5#define ALIHLTTRDTRACKLET_H
93ce7d1b 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 *
d679dd6c 9
10#include "AliTRDseedV1.h"
11#include "AliHLTDataTypes.h"
12#include "AliHLTLogging.h"
93ce7d1b 13#include "AliHLTTRDCluster.h"
d679dd6c 14
15class AliHLTTRDTracklet
16{
17 public:
18 AliHLTTRDTracklet();
93ce7d1b 19 AliHLTTRDTracklet(const AliTRDseedV1* const inTracklet);
d679dd6c 20
93ce7d1b 21 void CopyDataMembers(const AliTRDseedV1* const inTracklet);
22 void ExportTRDTracklet(AliTRDseedV1* const outTracklet) const;
23 AliHLTUInt8_t *GetEndPointer() const // Returns pointer to the end of the tracklet
24 { return ((AliHLTUInt8_t *)this + fSize); };
25 AliHLTUInt32_t GetSize() const { return fSize; };
26 void Print(Bool_t printClusters = kTRUE) const;
27 // void ReadClustersFromMemory(void *input);
d679dd6c 28
29 private:
30 AliHLTTRDTracklet(const AliHLTTRDTracklet&);
31 AliHLTTRDTracklet& operator=(const AliHLTTRDTracklet&);
32 void InitArrays();
d679dd6c 33
93ce7d1b 34 /* Defenitely need */
9630a0b8 35 UInt_t fN; // number of clusters attached/used/shared
93ce7d1b 36 Float_t fdX; // length of time bin
0fae33c8 37 Float_t fYref[2]; // Reference y
38 Float_t fZref[2]; // Reference z
39 Float_t fS2Y; // estimated resolution in the r-phi direction
40 Float_t fPt; // Momentum estimate for tracklet [GeV/c]
93ce7d1b 41
d679dd6c 42 /* Probably need */
9630a0b8 43 Float_t fPad[3]; // local pad definition : length/width/tilt
93ce7d1b 44 Float_t fX0; // X0 position
45 Float_t fYfit[2]; // Y fit position +derivation
46 Float_t fZfit[2]; // Z fit position
68f9b6bd 47 Float_t fC[2]; // Curvature Rieman[0] Vertex[1]
93ce7d1b 48 Float_t fChi2; // Global chi2
49 Float_t fProb[AliPID::kSPECIES];// PID probabilities
50
51 /* Not needed */
0fae33c8 52 // Float_t fExB; // tg(a_L) @ tracklet location
53 // Float_t fVD; // drift velocity @ tracklet location
54 // Float_t fT0; // time 0 @ tracklet location
55 // Float_t fS2PRF; // sigma^2 PRF for xd->0 and phi=a_L
56 // Float_t fDiffL; // longitudinal diffusion coefficient
57 // Float_t fDiffT; // transversal diffusion coefficient
58 // Float_t fX; // radial position of the tracklet
59 // Float_t fY; // r-phi position of the tracklet
60 // Float_t fZ; // z position of the tracklet
61 // Float_t fS2Z; // estimated resolution in the z direction
62 // Float_t fdEdx[AliTRDseedV1::kNslices]; // dE/dx measurements for tracklet
63 // Float_t fRefCov[7]; // covariance matrix of the track in the yz plane + the rest of the diagonal elements
64 // Float_t fCov[3]; // covariance matrix of the tracklet in the xy plane
d679dd6c 65
0fae33c8 66 UChar_t fPos[AliTRDseedV1::kNclusters]; // position of the cluster in the original array
d679dd6c 67
0fae33c8 68 Short_t fDet; // TRD detector
69 UChar_t fBits; // Bits of the tracklet
70 AliHLTUInt8_t fCount; // Number of clusters saved in the open array
71 AliHLTUInt32_t fSize; // Size of the tracklet with clusters in the memory
d679dd6c 72
93ce7d1b 73#if defined(__HP_aCC) || defined(__DECCXX) || defined(__SUNPRO_CC)
0fae33c8 74 AliHLTTRDCluster fClusters[1]; // Open array of clusters
93ce7d1b 75#else
0fae33c8 76 AliHLTTRDCluster fClusters[0]; // Open array of clusters
93ce7d1b 77#endif
d679dd6c 78
79};
80
81#endif