Project
Loading...
Searching...
No Matches
GPUTPCStartHitsSorter.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 GPUTPCSTARTHITSSORTER_H
16
#define GPUTPCSTARTHITSSORTER_H
17
18
#include "
GPUTPCDef.h
"
19
#include "
GPUTPCHitId.h
"
20
#include "
GPUGeneralKernels.h
"
21
#include "
GPUConstantMem.h
"
22
23
namespace
o2::gpu
24
{
25
class
GPUTPCTracker;
26
31
class
GPUTPCStartHitsSorter
:
public
GPUKernelTemplate
32
{
33
public
:
34
struct
GPUSharedMemory
{
35
int32_t
mStartRow
;
// start row index
36
int32_t
mNRows
;
// number of rows to process
37
int32_t
mStartOffset
;
// start offset for hits sorted by this block
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
<
int
32_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
// GPUTPCSTARTHITSSORTER_H
GPUsharedref
#define GPUsharedref()
Definition
GPUCommonDefAPI.h:56
GPUConstantMem.h
GPUGeneralKernels.h
GPUTPCDef.h
GPUTPCHitId.h
o2::gpu::GPUDataTypes
Definition
GPUDataTypes.h:118
o2::gpu::GPUKernelTemplate
Definition
GPUGeneralKernels.h:40
o2::gpu::GPUKernelTemplate::processors
int32_t int32_t int32_t processorType & processors
Definition
GPUGeneralKernels.h:88
o2::gpu::GPUTPCStartHitsSorter
Definition
GPUTPCStartHitsSorter.h:32
o2::gpu::GPUTPCStartHitsSorter::GPUhdi
GPUhdi() static processorType *Processor(GPUConstantMem &processors)
Definition
GPUTPCStartHitsSorter.h:42
o2::gpu::GPUTPCStartHitsSorter::tracker
int32_t int32_t int32_t processorType & tracker
Definition
GPUTPCStartHitsSorter.h:47
o2::gpu::GPUTPCStartHitsSorter::nThreads
int32_t nThreads
Definition
GPUTPCStartHitsSorter.h:47
o2::gpu::GPUTPCStartHitsSorter::iBlock
int32_t int32_t iBlock
Definition
GPUTPCStartHitsSorter.h:47
o2::gpu::GPUTPCStartHitsSorter::GPUd
GPUd() static void Thread(int32_t nBlocks
o2::gpu::GPUTPCStartHitsSorter::GPUhdi
GPUhdi() const expr static GPUDataTypes
Definition
GPUTPCStartHitsSorter.h:41
o2::gpu::GPUTPCStartHitsSorter::iThread
int32_t int32_t int32_t iThread
Definition
GPUTPCStartHitsSorter.h:47
o2::gpu::GPUTPCStartHitsSorter::GPUconstantref
typedef GPUconstantref() GPUTPCTracker processorType
o2::gpu::GPUTPCTracker
Definition
GPUTPCTracker.h:40
o2::gpu
Definition
TrackTRD.h:35
o2::gpu::GPUConstantMem
Definition
GPUConstantMem.h:39
o2::gpu::GPUTPCStartHitsSorter::GPUSharedMemory
Definition
GPUTPCStartHitsSorter.h:34
o2::gpu::GPUTPCStartHitsSorter::GPUSharedMemory::mNRows
int32_t mNRows
Definition
GPUTPCStartHitsSorter.h:36
o2::gpu::GPUTPCStartHitsSorter::GPUSharedMemory::mStartRow
int32_t mStartRow
Definition
GPUTPCStartHitsSorter.h:35
o2::gpu::GPUTPCStartHitsSorter::GPUSharedMemory::mStartOffset
int32_t mStartOffset
Definition
GPUTPCStartHitsSorter.h:37
GPU
GPUTracking
SectorTracker
GPUTPCStartHitsSorter.h
Generated on Tue Feb 25 2025 17:03:26 for Project by
1.9.8