]>
Commit | Line | Data |
---|---|---|
1 | //-*- Mode: C++ -*- | |
2 | // @(#) $Id$ | |
3 | // ************************************************************************ | |
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 | // * | |
8 | //************************************************************************* | |
9 | ||
10 | #ifndef ALIHLTTPCCAROW_H | |
11 | #define ALIHLTTPCCAROW_H | |
12 | ||
13 | #include "AliHLTTPCCADef.h" | |
14 | #include "AliHLTTPCCAGrid.h" | |
15 | ||
16 | /** | |
17 | * @class ALIHLTTPCCARow | |
18 | * | |
19 | * The ALIHLTTPCCARow class is a hit and cells container for one TPC row. | |
20 | * It is the internal class of the AliHLTTPCCATracker algorithm. | |
21 | * | |
22 | */ | |
23 | class AliHLTTPCCARow | |
24 | { | |
25 | friend class AliHLTTPCCASliceData; | |
26 | public: | |
27 | ||
28 | #if !defined(HLTCA_GPUCODE) | |
29 | AliHLTTPCCARow(); | |
30 | #endif //!HLTCA_GPUCODE | |
31 | ||
32 | GPUhd() int NHits() const { return fNHits; } | |
33 | GPUhd() float X() const { return fX; } | |
34 | GPUhd() float MaxY() const { return fMaxY; } | |
35 | GPUhd() const AliHLTTPCCAGrid &Grid() const { return fGrid; } | |
36 | ||
37 | GPUhd() float Hy0() const { return fHy0; } | |
38 | GPUhd() float Hz0() const { return fHz0; } | |
39 | GPUhd() float HstepY() const { return fHstepY; } | |
40 | GPUhd() float HstepZ() const { return fHstepZ; } | |
41 | GPUhd() float HstepYi() const { return fHstepYi; } | |
42 | GPUhd() float HstepZi() const { return fHstepZi; } | |
43 | GPUhd() int FullSize() const { return fFullSize; } | |
44 | GPUhd() int HitNumberOffset() const { return fHitNumberOffset; } | |
45 | GPUhd() unsigned int FirstHitInBinOffset() const { return fFirstHitInBinOffset; } | |
46 | ||
47 | private: | |
48 | int fNHits; // number of hits | |
49 | float fX; // X coordinate of the row | |
50 | float fMaxY; // maximal Y coordinate of the row | |
51 | AliHLTTPCCAGrid fGrid; // grid of hits | |
52 | ||
53 | // hit packing: | |
54 | float fHy0; // offset | |
55 | float fHz0; // offset | |
56 | float fHstepY; // step size | |
57 | float fHstepZ; // step size | |
58 | float fHstepYi; // inverse step size | |
59 | float fHstepZi; // inverse step size | |
60 | ||
61 | int fFullSize; // size of this row in Tracker::fRowData | |
62 | int fHitNumberOffset; // index of the first hit in the hit array, used as | |
63 | // offset in AliHLTTPCCASliceData::LinkUp/DownData/HitDataY/... | |
64 | unsigned int fFirstHitInBinOffset; // offset in Tracker::fRowData to find the FirstHitInBin | |
65 | }; | |
66 | ||
67 | #endif //ALIHLTTPCCAROW_H |