Line data Source code
1 : //-*- Mode: C++ -*-
2 : // ************************************************************************
3 : // This file is property of and copyright by the ALICE HLT Project *
4 : // ALICE Experiment at CERN, All rights reserved. *
5 : // See cxx source for full Copyright notice *
6 : // *
7 : //*************************************************************************
8 :
9 : #ifndef ALIHLTTPCCATRACKLET_H
10 : #define ALIHLTTPCCATRACKLET_H
11 :
12 : #include "AliHLTTPCCADef.h"
13 : #include "AliHLTTPCCABaseTrackParam.h"
14 : #include "AliHLTTPCCAGPUConfig.h"
15 :
16 : /**
17 : * @class ALIHLTTPCCATracklet
18 : *
19 : * The class describes the reconstructed TPC track candidate.
20 : * The class is dedicated for internal use by the AliHLTTPCCATracker algorithm.
21 : */
22 : MEM_CLASS_PRE() class AliHLTTPCCATracklet
23 : {
24 : public:
25 :
26 : #if !defined(HLTCA_GPUCODE)
27 0 : AliHLTTPCCATracklet() : fNHits( 0 ), fFirstRow( 0 ), fLastRow( 0 ), fParam(), fHitWeight(0) {};
28 : void Dummy() const ;
29 0 : ~AliHLTTPCCATracklet() {}
30 : #endif //!HLTCA_GPUCODE
31 :
32 0 : GPUhd() int NHits() const { return fNHits; }
33 0 : GPUhd() int FirstRow() const { return fFirstRow; }
34 0 : GPUhd() int LastRow() const { return fLastRow; }
35 0 : GPUhd() int HitWeight() const { return fHitWeight; }
36 0 : GPUhd() MakeType(const MEM_LG(AliHLTTPCCABaseTrackParam)&) Param() const { return fParam; }
37 : #ifndef EXTERN_ROW_HITS
38 : GPUhd() int RowHit( int i ) const { return fRowHits[i]; }
39 : GPUhd() const int* RowHits() const { return(fRowHits); }
40 : GPUhd() void SetRowHit( int irow, int ih ) { fRowHits[irow] = ih; }
41 : #endif //EXTERN_ROW_HITS
42 :
43 0 : GPUhd() void SetNHits( int v ) { fNHits = v; }
44 0 : GPUhd() void SetFirstRow( int v ) { fFirstRow = v; }
45 0 : GPUhd() void SetLastRow( int v ) { fLastRow = v; }
46 0 : MEM_CLASS_PRE2() GPUhd() void SetParam( const MEM_LG2(AliHLTTPCCABaseTrackParam) &v ) { fParam = reinterpret_cast<const MEM_LG(AliHLTTPCCABaseTrackParam)&>(v); }
47 0 : GPUhd() void SetHitWeight( const int w) { fHitWeight = w; }
48 :
49 : private:
50 : int fNHits; // N hits
51 : int fFirstRow; // first TPC row
52 : int fLastRow; // last TPC row
53 : MEM_LG(AliHLTTPCCABaseTrackParam) fParam; // tracklet parameters
54 : #ifndef EXTERN_ROW_HITS
55 : int fRowHits[HLTCA_ROW_COUNT + 1]; // hit index for each TPC row
56 : #endif //EXTERN_ROW_HITS
57 : int fHitWeight; //Hit Weight of Tracklet
58 : };
59 :
60 : #endif //ALIHLTTPCCATRACKLET_H
|