]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - HLT/TPCLib/tracking-ca/AliHLTTPCCARow.h
bug fix: reconstruction crash when the output buffer size exceed
[u/mrichter/AliRoot.git] / HLT / TPCLib / tracking-ca / AliHLTTPCCARow.h
... / ...
CommitLineData
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 */
23class 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