]>
Commit | Line | Data |
---|---|---|
7f85a87e | 1 | // $Id$ |
a6c02c85 | 2 | |
3 | #ifndef _ALIHLTTPCDIGITDATA_H_ | |
4 | #define _ALIHLTTPCDIGITDATA_H_ | |
5 | ||
7f85a87e | 6 | #include "Rtypes.h" |
a6c02c85 | 7 | |
5578cf60 | 8 | /** |
9 | * @struct AliHLTTPCDigitData | |
10 | * Raw data structure for one row of TPC data. A digit corresponds to one | |
11 | * measured signal in 2 coordinates: pad and time <br> | |
12 | * The hight of the signal is given by the charge. <br> | |
13 | * This structure is only used while runnig HLT analysis in the offline | |
14 | * framework. Thats why it comes with a MC track id by default. | |
15 | * | |
16 | * The exact meaning of the 3 track ID fields is currently not known to me. | |
17 | * (Matthias 18.09.2007) | |
297174de | 18 | * @ingroup alihlt_tpc_datastructs |
5578cf60 | 19 | */ |
a6c02c85 | 20 | struct AliHLTTPCDigitData |
21 | { | |
a6c02c85 | 22 | UShort_t fCharge; |
5578cf60 | 23 | UChar_t fPad; |
a6c02c85 | 24 | UShort_t fTime; |
5578cf60 | 25 | Int_t fTrackID[3]; |
a6c02c85 | 26 | }; |
27 | typedef struct AliHLTTPCDigitData AliHLTTPCDigitData; | |
28 | ||
5578cf60 | 29 | /** |
30 | * @struct AliHLTTPCDigitRowData | |
31 | * A container for TPC raw data organized in rows. | |
32 | * This is the 3rd coordinate which is missing in @ref AliHLTTPCDigitData. | |
297174de | 33 | * @ingroup alihlt_tpc_datastructs |
5578cf60 | 34 | */ |
a6c02c85 | 35 | struct AliHLTTPCDigitRowData |
36 | { | |
37 | UInt_t fNDigit; | |
38 | UInt_t fRow; | |
39 | #if defined(__HP_aCC) || defined(__DECCXX) || defined(__SUNPRO_CC) | |
40 | AliHLTTPCDigitData fDigitData[1]; | |
41 | #else | |
42 | AliHLTTPCDigitData fDigitData[0]; | |
43 | #endif | |
44 | }; | |
45 | typedef struct AliHLTTPCDigitRowData AliHLTTPCDigitRowData; | |
46 | ||
5578cf60 | 47 | /** |
48 | * @struct AliHLTTPCRandomDigitData | |
49 | * Raw data structure for TPC data. A digit corresponds to one | |
50 | * measured signal in r coordinates: row, pad and time <br> | |
51 | * The hight of the signal is given by the charge. <br> | |
52 | * | |
53 | * The structure is not used for data exchange between components, | |
54 | * it's here for legacy reasons. | |
297174de | 55 | * @ingroup alihlt_tpc_datastructs |
5578cf60 | 56 | */ |
a6c02c85 | 57 | struct AliHLTTPCRandomDigitData{ |
58 | UChar_t fRow; | |
59 | UShort_t fCharge; | |
60 | UChar_t fPad; | |
61 | UShort_t fTime; | |
62 | }; | |
63 | typedef struct AliHLTTPCRandomDigitData AliHLTTPCRandomDigitData; | |
5578cf60 | 64 | |
65 | /** | |
66 | * @struct AliHLTTPCPackedRawData | |
67 | * Container structure for TPC data. | |
68 | * It contains an array of TPC data objects, organized by pad rows. | |
297174de | 69 | * @ingroup alihlt_tpc_datastructs |
5578cf60 | 70 | */ |
71 | struct AliHLTTPCUnpackedRawData | |
72 | { | |
73 | #ifndef __SUNPRO_CC | |
74 | AliHLTTPCDigitRowData fDigits[]; | |
75 | #else | |
76 | AliHLTTPCDigitRowData fDigits[1]; | |
77 | #endif | |
78 | }; | |
79 | ||
a6c02c85 | 80 | #endif /* _ALIHLTTPCDIGITDATA_H_ */ |