added AliFlatExternalTrackParam to HLT global library
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCDigitData.h
CommitLineData
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 20struct 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};
27typedef 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 35struct 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};
45typedef 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 57struct AliHLTTPCRandomDigitData{
58 UChar_t fRow;
59 UShort_t fCharge;
60 UChar_t fPad;
61 UShort_t fTime;
62};
63typedef 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 */
71struct AliHLTTPCUnpackedRawData
72{
66b7af32 73#if defined(__HP_aCC) || defined(__DECCXX) || defined(__SUNPRO_CC)
5578cf60 74 AliHLTTPCDigitRowData fDigits[1];
66b7af32 75#else
76 AliHLTTPCDigitRowData fDigits[0];
5578cf60 77#endif
78};
79
a6c02c85 80#endif /* _ALIHLTTPCDIGITDATA_H_ */