Project
Loading...
Searching...
No Matches
GPUTPCDecompression.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 GPUTPCDECOMPRESSION_H
16#define GPUTPCDECOMPRESSION_H
17
18#include "GPUDef.h"
19#include "GPUProcessor.h"
20#include "GPUCommonMath.h"
21#include "GPUParam.h"
22#include "GPUO2DataTypes.h"
24#include "GPUTPCGeometry.h"
25
26namespace o2::gpu
27{
28
30{
33 friend class GPUChainTracking;
35
36 public:
37#ifndef GPUCA_GPUCODE
41
42 void* SetPointersInputGPU(void* mem);
43 void* SetPointersTmpNativeBuffersGPU(void* mem);
44 void* SetPointersTmpNativeBuffersOutput(void* mem);
45 void* SetPointersTmpNativeBuffersInput(void* mem);
48 void* SetPointersNClusterPerSectorRow(void* mem);
49
50#endif
51
52 protected:
53 constexpr static uint32_t NSECTORS = GPUTPCGeometry::NSECTORS;
55
65
66 template <class T>
67 void SetPointersCompressedClusters(void*& mem, T& c, uint32_t nClA, uint32_t nTr, uint32_t nClU, bool reducedClA);
68
69 int16_t mMemoryResInputGPU = -1;
70 int16_t mResourceTmpIndexes = -1;
75};
76} // namespace o2::gpu
77#endif // GPUTPCDECOMPRESSION_H
Container to store compressed TPC cluster data.
uint32_t c
Definition RawData.h:2
void * SetPointersInputClusterNativeAccess(void *mem)
void * SetPointersTmpNativeBuffersGPU(void *mem)
void * SetPointersTmpNativeBuffersInput(void *mem)
o2::tpc::CompressedClusters mInputGPU
void * SetPointersTmpClusterNativeAccessForFiltering(void *mem)
void SetPointersCompressedClusters(void *&mem, T &c, uint32_t nClA, uint32_t nTr, uint32_t nClU, bool reducedClA)
void * SetPointersTmpNativeBuffersOutput(void *mem)
void * SetPointersNClusterPerSectorRow(void *mem)
o2::tpc::ClusterNative * mTmpNativeClusters
void SetMaxData(const GPUTrackingInOutPointers &io)
static constexpr uint32_t NSECTORS
o2::tpc::ClusterNative * mNativeClustersBuffer
o2::tpc::ClusterNativeAccess * mClusterNativeAccess
static constexpr uint32_t NSECTORS