]>
Commit | Line | Data |
---|---|---|
a6c02c85 | 1 | // @(#) $Id$ |
4aa41877 | 2 | // Original: AliHLTModels.h,v 1.11 2004/05/17 16:37:19 hristov |
a6c02c85 | 3 | |
6b6ea894 | 4 | //* This file is property of and copyright by the ALICE HLT Project * |
5 | //* ALICE Experiment at CERN, All rights reserved. * | |
6 | //* See cxx source for full Copyright notice * | |
7 | ||
a6c02c85 | 8 | #ifndef AliHLTTPCModels_H |
9 | #define AliHLTTPCModels_H | |
10 | ||
6b6ea894 | 11 | /// \author Anders Vestbo or Constantin Loizides |
12 | /// \date 7 Sep 2005 | |
13 | /// \brief Data structures used for TPC clusters. | |
14 | /// | |
15 | /// Basic structures used by the AliHLTTPCModelTrack class. | |
16 | ||
a6c02c85 | 17 | #include "AliHLTTPCRootTypes.h" |
18 | ||
6b6ea894 | 19 | const Int_t kMaxNClusters = 32; |
a6c02c85 | 20 | |
21 | struct AliHLTTPCClusterModel { | |
6b6ea894 | 22 | Byte_t fPresent; // Boolean flag, is the cluster present or not? |
23 | Float_t fDTime; // Digit time. | |
24 | Float_t fDPad; // Digit pad. | |
25 | Float_t fDCharge; // Digit charge. | |
26 | Float_t fDSigmaY; // Sigma in Y. | |
27 | Float_t fDSigmaZ; // Sigma in X. | |
28 | UInt_t fNPads; // Total number of pafs. | |
29 | Short_t fSlice; // TPC slice. | |
a6c02c85 | 30 | #ifdef do_mc |
6b6ea894 | 31 | Int_t fTrackID[3]; // Track IDs from MC. |
a6c02c85 | 32 | #endif |
33 | }; | |
34 | typedef struct AliHLTTPCClusterModel AliHLTTPCClusterModel; | |
35 | ||
36 | struct AliHLTTPCRemainingCluster { | |
6b6ea894 | 37 | Float_t fPad; // Pad value. |
38 | Float_t fTime; // Time value. | |
39 | Float_t fSigmaY2; // Square of sigma in Y. | |
40 | Float_t fSigmaZ2; // Square of sigma in X. | |
41 | UShort_t fCharge; // Charge. | |
a6c02c85 | 42 | }; |
43 | typedef struct AliHLTTPCRemainingCluster AliHLTTPCRemainingCluster; | |
44 | ||
45 | struct AliHLTTPCRemainingRow { | |
46 | Byte_t fPadRow; //1 byte | |
47 | UShort_t fNClusters; //2 bytes | |
48 | #if defined(__HP_aCC) || defined(__DECCXX) || defined(__SUNPRO_CC) | |
6b6ea894 | 49 | AliHLTTPCRemainingCluster fClusters[1]; // Array of clusters. |
a6c02c85 | 50 | #else |
6b6ea894 | 51 | AliHLTTPCRemainingCluster fClusters[0]; // Array of clusters. |
a6c02c85 | 52 | #endif |
53 | }; | |
54 | typedef struct AliHLTTPCRemainingRow AliHLTTPCRemainingRow; | |
55 | ||
56 | struct AliHLTTPCTrackModel {//5 independent parameters is needed to encode the helix: | |
57 | Float_t fKappa; //Curvature | |
58 | Float_t fPhi; //Azimuthal angle of DCAO (distance of closest approach to origo) | |
59 | Float_t fD; //radius of DCA0 | |
60 | Float_t fZ0; //z-coordinate of DCA0 | |
61 | Float_t fTgl; //tan of dipangle | |
62 | }; | |
63 | typedef struct AliHLTTPCTrackModel AliHLTTPCTrackModel; | |
64 | ||
65 | #endif |