15#ifndef GPUTPCSECTORDATA_H
16#define GPUTPCSECTORDATA_H
26struct GPUTPCClusterData;
32 GPUTPCTrackingData() : mNumberOfHits(0), mNumberOfHitsPlusAlign(0), mClusterIdOffset(0), mGPUTextureBase(nullptr), mRows(nullptr), mLinkUpData(nullptr), mLinkDownData(nullptr), mClusterData(nullptr) {}
34#ifndef GPUCA_GPUCODE_DEVICE
51 GPUhd() int32_t NumberOfHits()
const {
return mNumberOfHits; }
52 GPUhd() int32_t NumberOfHitsPlusAlign()
const {
return mNumberOfHitsPlusAlign; }
53 GPUhd() int32_t ClusterIdOffset()
const {
return mClusterIdOffset; }
104 GPUd() GPUglobalref()
const int32_t* ClusterDataIndex()
const {
return mClusterDataIndex; }
105 GPUd() GPUglobalref() int32_t* ClusterDataIndex() {
return mClusterDataIndex; }
116 GPUhdi()
char* GPUTextureBase()
const {
return ((
char*)mGPUTextureBase); }
117 GPUhdi()
char* GPUTextureBaseConst()
const {
return ((
char*)mGPUTextureBase); }
129 GPUd() uint32_t GetGridSize(uint32_t nHits, uint32_t nRows);
134 int32_t mNumberOfHits;
135 int32_t mNumberOfHitsPlusAlign;
136 int32_t mClusterIdOffset;
138 GPUglobalref()
const void* mGPUTextureBase;
142 GPUglobalref()
calink* mLinkUpData;
143 GPUglobalref()
calink* mLinkDownData;
144 GPUglobalref()
cahit2* mHitData;
145 GPUglobalref() int32_t* mClusterDataIndex;
151 GPUglobalref()
calink* mFirstHitInBin;
152 GPUglobalref()
GPUAtomic(uint32_t) * mHitWeights;
GPUhd() int32_t NumberOfHits() const
GPUdi() GPUglobalref() calink *HitLinkUpData(const GPUTPCRow &row)
GPUd() void SetHitLinkUpData(const GPUTPCRow &row
GPUhd() int32_t ClusterIdOffset() const
const calink &hitIndex const
GPUhdi() char *GPUTextureBase() const
int32_t int32_t int32_t iThread
GPUdi() GPUglobalref() const calink *FirstHitInBin(const GPUTPCRow &row) const
GPUhdi() void SetGPUTextureBase(GPUglobalref() const void *val)
int32_t int32_t int32_t int32_t iSector
GPUd() GPUglobalref() int32_t *ClusterDataIndex()
int32_t int32_t int32_t GPUconstantref() const GPUConstantMem *mem
GPUd() int32_t InitFromClusterData(int32_t nBlocks
GPUhd() GPUglobalref() const cahit2 *HitData() const
GPUhdi() GPUglobalref() const GPUTPCRow &Row(int32_t rowIndex) const
GPUhdi() GPUglobalref() GPUAtomic(uint32_t) *HitWeights()
void InitializeRows(const GPUParam &p)
GPUhdi() GPUglobalref() cahit2 *HitData(const GPUTPCRow &row)
~GPUTPCTrackingData()=default
void * SetPointersScratch(void *mem, bool idsOnGPU)
GPUdi() GPUglobalref() const calink *HitLinkUpData(const GPUTPCRow &row) const
const calink const calink & value
GPUhdi() char *GPUTextureBaseConst() const
GPUhdi() GPUglobalref() const GPUTPCClusterData *ClusterData() const
int32_t int32_t int32_t int32_t float * tmpMinMax
GPUhd() int32_t NumberOfHitsPlusAlign() const
void SetClusterData(const GPUTPCClusterData *data, int32_t nClusters, int32_t clusterIdOffset)
GPUdi() GPUglobalref() const calink *HitLinkDownData(const GPUTPCRow &row) const
void * SetPointersWeights(void *mem)
void * SetPointersClusterIds(void *mem, bool idsOnGPU)
void * SetPointersLinks(void *mem)
GPUhdi() GPUglobalref() GPUTPCRow *Rows() const
void * SetPointersRows(void *mem)
GLfloat GLfloat GLfloat GLfloat GLfloat maxY
GLuint GLuint GLfloat weight
GLsizei const GLfloat * value
typedef void(APIENTRYP PFNGLCULLFACEPROC)(GLenum mode)
GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat maxZ