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 ALIHLTTPCCANEIGHBOURSCLEANER_H
10 : #define ALIHLTTPCCANEIGHBOURSCLEANER_H
11 :
12 :
13 : #include "AliHLTTPCCADef.h"
14 :
15 : MEM_CLASS_PRE() class AliHLTTPCCATracker;
16 :
17 : /**
18 : * @class AliHLTTPCCANeighboursCleaner
19 : *
20 : */
21 : class AliHLTTPCCANeighboursCleaner
22 : {
23 : public:
24 : MEM_CLASS_PRE() class AliHLTTPCCASharedMemory
25 : {
26 : friend class AliHLTTPCCANeighboursCleaner;
27 : public:
28 : #if !defined(HLTCA_GPUCODE)
29 : AliHLTTPCCASharedMemory()
30 0 : : fIRow( 0 ), fIRowUp( 0 ), fIRowDn( 0 ), fNRows( 0 ), fNHits( 0 ) {}
31 : AliHLTTPCCASharedMemory( const AliHLTTPCCASharedMemory& /*dummy*/ )
32 : : fIRow( 0 ), fIRowUp( 0 ), fIRowDn( 0 ), fNRows( 0 ), fNHits( 0 ) {}
33 : AliHLTTPCCASharedMemory& operator=( const AliHLTTPCCASharedMemory& /*dummy*/ ) { return *this; }
34 : #endif //!HLTCA_GPUCODE
35 :
36 : protected:
37 : int fIRow; // current row index
38 : int fIRowUp; // current row index
39 : int fIRowDn; // current row index
40 : int fNRows; // number of rows
41 : int fNHits; // number of hits
42 : };
43 :
44 0 : GPUd() static int NThreadSyncPoints() { return 1; }
45 :
46 : GPUd() static void Thread( int /*nBlocks*/, int nThreads, int iBlock, int iThread, int iSync,
47 : MEM_LOCAL(GPUsharedref() AliHLTTPCCASharedMemory) &smem, MEM_CONSTANT(GPUconstant() AliHLTTPCCATracker) &tracker );
48 : };
49 :
50 :
51 : #endif //ALIHLTTPCCANEIGHBOURSCLEANER_H
|