15#ifndef GPUTPCCOMPRESSION_H
16#define GPUTPCCOMPRESSION_H
101 uint32_t ldz =
sizeof(uint32_t) * 8 - CAMath::Clz(
val);
103 if (
val & (1 << (ldz -
nBits - 1))) {
105 ldz =
sizeof(uint32_t) * 8 - CAMath::Clz(
val);
107 val &= ((1 << ldz) - 1) ^ ((1 << (ldz -
nBits)) - 1);
Container to store compressed TPC cluster data.
GPUd() static void truncateSignificantBitsChargeMax(uint16_t &charge
static constexpr uint32_t P_MAX_QTOT
GPUd() static void truncateSignificantBits(T &val
GPUd() static void truncateSignificantBitsWidth(uint8_t &width
uint32_t mMaxClustersInCache
int16_t mMemoryResOutputHost
int16_t mMemoryResOutputGPU
static constexpr uint32_t P_MAX_QMAX
uint32_t * mAttachedClusterFirstIndex
void * SetPointersOutputHost(void *mem)
static constexpr uint32_t P_MAX_TIME
void SetPointersCompressedClusters(void *&mem, T &c, uint32_t nClA, uint32_t nTr, uint32_t nClU, bool reducedClA)
static constexpr uint32_t P_MAX_QPT
static constexpr uint32_t P_MAX_SIGMA
o2::tpc::CompressedClusters * mOutput
void * SetPointersMemory(void *mem)
void * SetPointersOutputGPU(void *mem)
static constexpr uint32_t NSECTORS
uint32_t mMaxTrackClusters
o2::tpc::CompressedClusters * mOutputA
o2::tpc::CompressedClustersPtrs mPtrs
void * SetPointersOutput(void *mem)
o2::tpc::CompressedClustersFlat * mOutputFlat
GPUd() static void truncateSignificantBitsCharge(uint16_t &charge
void * SetPointersOutputPtrs(void *mem)
void InitializeProcessor()
void SetMaxData(const GPUTrackingInOutPointers &io)
static constexpr uint32_t P_MAX_PAD
size_t mMaxClusterFactorBase1024
static constexpr uint32_t P_MAX_FLAGS
void * SetPointersScratch(void *mem)
void RegisterMemoryAllocation()
uint32_t nStoredAttachedClusters
uint32_t nStoredUnattachedClusters