Project
Loading...
Searching...
No Matches
GPUTPCNeighboursCleaner.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
14
15#ifndef GPUTPCNEIGHBOURSCLEANER_H
16#define GPUTPCNEIGHBOURSCLEANER_H
17
18#include "GPUTPCDef.h"
19#include "GPUGeneralKernels.h"
20#include "GPUConstantMem.h"
21
22namespace o2::gpu
23{
24class GPUTPCTracker;
25
31{
32 public:
34 int32_t mIRow; // current row index
35 int32_t mIRowUp; // current row index
36 int32_t mIRowDn; // current row index
37 int32_t mNHits; // number of hits
38 };
39
40 typedef GPUconstantref() GPUTPCTracker processorType;
41 GPUhdi() constexpr static GPUDataTypes::RecoStep GetRecoStep() { return GPUCA_RECO_STEP::TPCSectorTracking; }
42 GPUhdi() static processorType* Processor(GPUConstantMem& processors)
43 {
44 return processors.tpcTrackers;
45 }
46 template <int32_t iKernel = defaultKernel>
47 GPUd() static void Thread(int32_t /*nBlocks*/, int32_t nThreads, int32_t iBlock, int32_t iThread, GPUsharedref() GPUSharedMemory& smem, processorType& tracker);
48};
49} // namespace o2::gpu
50
51#endif // GPUTPCNEIGHBOURSCLEANER_H
#define GPUsharedref()
int32_t int32_t int32_t processorType & processors
GPUhdi() static processorType *Processor(GPUConstantMem &processors)
GPUhdi() const expr static GPUDataTypes
GPUd() static void Thread(int32_t
int32_t int32_t int32_t processorType & tracker
typedef GPUconstantref() GPUTPCTracker processorType