CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Friends
TrackingRecHit2DSOAView Class Reference

#include <TrackingRecHit2DSOAView.h>

Public Types

using AverageGeometry = phase1PixelTopology::AverageGeometry
 
using hindex_type = uint32_t
 
using PhiBinner = cms::cuda::HistoContainer< int16_t, 128, gpuClustering::maxNumClusters, 8 *sizeof(int16_t), hindex_type, 10 >
 

Public Member Functions

__device__ __attribute__ ((always_inline)) AverageGeometry &averageGeometry()
 
__device__ __attribute__ ((always_inline)) AverageGeometry const &averageGeometry() const
 
__device__ __attribute__ ((always_inline)) float &rGlobal(int i)
 
__device__ __attribute__ ((always_inline)) float &xerrLocal(int i)
 
__device__ __attribute__ ((always_inline)) float &xGlobal(int i)
 
__device__ __attribute__ ((always_inline)) float &xLocal(int i)
 
__device__ __attribute__ ((always_inline)) float &yerrLocal(int i)
 
__device__ __attribute__ ((always_inline)) float &yGlobal(int i)
 
__device__ __attribute__ ((always_inline)) float &yLocal(int i)
 
__device__ __attribute__ ((always_inline)) float &zGlobal(int i)
 
__device__ __attribute__ ((always_inline)) float rGlobal(int i) const
 
__device__ __attribute__ ((always_inline)) float xerrLocal(int i) const
 
__device__ __attribute__ ((always_inline)) float xGlobal(int i) const
 
__device__ __attribute__ ((always_inline)) float xLocal(int i) const
 
__device__ __attribute__ ((always_inline)) float yerrLocal(int i) const
 
__device__ __attribute__ ((always_inline)) float yGlobal(int i) const
 
__device__ __attribute__ ((always_inline)) float yLocal(int i) const
 
__device__ __attribute__ ((always_inline)) float zGlobal(int i) const
 
__device__ __attribute__ ((always_inline)) int16_t &clusterSizeX(int i)
 
__device__ __attribute__ ((always_inline)) int16_t &clusterSizeY(int i)
 
__device__ __attribute__ ((always_inline)) int16_t &iphi(int i)
 
__device__ __attribute__ ((always_inline)) int16_t clusterSizeX(int i) const
 
__device__ __attribute__ ((always_inline)) int16_t clusterSizeY(int i) const
 
__device__ __attribute__ ((always_inline)) int16_t iphi(int i) const
 
__device__ __attribute__ ((always_inline)) int32_t &charge(int i)
 
__device__ __attribute__ ((always_inline)) int32_t charge(int i) const
 
__device__ __attribute__ ((always_inline)) PhiBinner &phiBinner()
 
__device__ __attribute__ ((always_inline)) PhiBinner const &phiBinner() const
 
__device__ __attribute__ ((always_inline)) pixelCPEforGPU
 
__device__ __attribute__ ((always_inline)) uint16_t &detectorIndex(int i)
 
__device__ __attribute__ ((always_inline)) uint16_t detectorIndex(int i) const
 
__device__ __attribute__ ((always_inline)) uint32_t const *hitsLayerStart() const
 
__device__ __attribute__ ((always_inline)) uint32_t nHits() const
 

Static Public Member Functions

static constexpr uint32_t maxHits ()
 

Private Attributes

AverageGeometrym_averageGeometry
 
int32_t * m_charge
 
pixelCPEforGPU::ParamsOnGPU const * m_cpeParams
 
uint16_t * m_detInd
 
uint32_t * m_hitsLayerStart
 
uint32_t const * m_hitsModuleStart
 
int16_t * m_iphi
 
uint32_t m_nHits
 
PhiBinnerm_phiBinner
 
float * m_rg
 
float * m_xerr
 
float * m_xg
 
float * m_xl
 
int16_t * m_xsize
 
float * m_yerr
 
float * m_yg
 
float * m_yl
 
int16_t * m_ysize
 
float * m_zg
 

Friends

template<typename >
class TrackingRecHit2DHeterogeneous
 

Detailed Description

Definition at line 15 of file TrackingRecHit2DSOAView.h.

Member Typedef Documentation

◆ AverageGeometry

Definition at line 23 of file TrackingRecHit2DSOAView.h.

◆ hindex_type

Definition at line 18 of file TrackingRecHit2DSOAView.h.

◆ PhiBinner

Definition at line 21 of file TrackingRecHit2DSOAView.h.

Member Function Documentation

◆ __attribute__() [1/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 71 of file TrackingRecHit2DSOAView.h.

71 { return *m_averageGeometry; }

References m_averageGeometry.

◆ __attribute__() [2/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const &
inline

Definition at line 72 of file TrackingRecHit2DSOAView.h.

72 { return *m_averageGeometry; }

References m_averageGeometry.

◆ __attribute__() [3/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 46 of file TrackingRecHit2DSOAView.h.

46 { return m_rg[i]; }

References mps_fire::i, and m_rg.

◆ __attribute__() [4/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 35 of file TrackingRecHit2DSOAView.h.

35 { return m_xerr[i]; }

References mps_fire::i, and m_xerr.

◆ __attribute__() [5/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 40 of file TrackingRecHit2DSOAView.h.

40 { return m_xg[i]; }

References mps_fire::i, and m_xg.

◆ __attribute__() [6/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 30 of file TrackingRecHit2DSOAView.h.

30 { return m_xl[i]; }

References mps_fire::i, and m_xl.

◆ __attribute__() [7/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 37 of file TrackingRecHit2DSOAView.h.

37 { return m_yerr[i]; }

References mps_fire::i, and m_yerr.

◆ __attribute__() [8/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 42 of file TrackingRecHit2DSOAView.h.

42 { return m_yg[i]; }

References mps_fire::i, and m_yg.

◆ __attribute__() [9/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 32 of file TrackingRecHit2DSOAView.h.

32 { return m_yl[i]; }

References mps_fire::i, and m_yl.

◆ __attribute__() [10/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 44 of file TrackingRecHit2DSOAView.h.

44 { return m_zg[i]; }

References mps_fire::i, and m_zg.

◆ __attribute__() [11/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 47 of file TrackingRecHit2DSOAView.h.

47 { return __ldg(m_rg + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_rg.

◆ __attribute__() [12/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 36 of file TrackingRecHit2DSOAView.h.

36 { return __ldg(m_xerr + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_xerr.

◆ __attribute__() [13/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 41 of file TrackingRecHit2DSOAView.h.

41 { return __ldg(m_xg + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_xg.

◆ __attribute__() [14/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 31 of file TrackingRecHit2DSOAView.h.

31 { return __ldg(m_xl + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_xl.

◆ __attribute__() [15/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 38 of file TrackingRecHit2DSOAView.h.

38 { return __ldg(m_yerr + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_yerr.

◆ __attribute__() [16/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 43 of file TrackingRecHit2DSOAView.h.

43 { return __ldg(m_yg + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_yg.

◆ __attribute__() [17/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 33 of file TrackingRecHit2DSOAView.h.

33 { return __ldg(m_yl + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_yl.

◆ __attribute__() [18/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 45 of file TrackingRecHit2DSOAView.h.

45 { return __ldg(m_zg + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_zg.

◆ __attribute__() [19/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 54 of file TrackingRecHit2DSOAView.h.

54 { return m_xsize[i]; }

References mps_fire::i, and m_xsize.

◆ __attribute__() [20/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 56 of file TrackingRecHit2DSOAView.h.

56 { return m_ysize[i]; }

References mps_fire::i, and m_ysize.

◆ __attribute__() [21/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 49 of file TrackingRecHit2DSOAView.h.

49 { return m_iphi[i]; }

References mps_fire::i, and m_iphi.

◆ __attribute__() [22/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 55 of file TrackingRecHit2DSOAView.h.

55 { return __ldg(m_xsize + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_xsize.

◆ __attribute__() [23/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 57 of file TrackingRecHit2DSOAView.h.

57 { return __ldg(m_ysize + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_ysize.

◆ __attribute__() [24/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 50 of file TrackingRecHit2DSOAView.h.

50 { return __ldg(m_iphi + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_iphi.

◆ __attribute__() [25/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 52 of file TrackingRecHit2DSOAView.h.

52 { return m_charge[i]; }

References mps_fire::i, and m_charge.

◆ __attribute__() [26/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 53 of file TrackingRecHit2DSOAView.h.

53 { return __ldg(m_charge + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_charge.

◆ __attribute__() [27/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 68 of file TrackingRecHit2DSOAView.h.

68 { return *m_phiBinner; }

References m_phiBinner.

◆ __attribute__() [28/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const &
inline

Definition at line 69 of file TrackingRecHit2DSOAView.h.

69 { return *m_phiBinner; }

References m_phiBinner.

◆ __attribute__() [29/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  )
inline

Definition at line 61 of file TrackingRecHit2DSOAView.h.

61  { return *m_cpeParams; }
62 
63  __device__ __forceinline__ uint32_t hitsModuleStart(int i) const { return __ldg(m_hitsModuleStart + i); }
64 
65  __device__ __forceinline__ uint32_t* hitsLayerStart() { return m_hitsLayerStart; }

References m_cpeParams.

◆ __attribute__() [30/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) &
inline

Definition at line 58 of file TrackingRecHit2DSOAView.h.

58 { return m_detInd[i]; }

References mps_fire::i, and m_detInd.

◆ __attribute__() [31/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 59 of file TrackingRecHit2DSOAView.h.

59 { return __ldg(m_detInd + i); }

References cms::cudacompat::__ldg(), mps_fire::i, and m_detInd.

◆ __attribute__() [32/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 66 of file TrackingRecHit2DSOAView.h.

66 { return m_hitsLayerStart; }

References m_hitsLayerStart.

◆ __attribute__() [33/33]

__device__ TrackingRecHit2DSOAView::__attribute__ ( (always_inline)  ) const
inline

Definition at line 28 of file TrackingRecHit2DSOAView.h.

28 { return m_nHits; }

References m_nHits.

◆ maxHits()

static constexpr uint32_t TrackingRecHit2DSOAView::maxHits ( )
inlinestaticconstexpr

Friends And Related Function Documentation

◆ TrackingRecHit2DHeterogeneous

template<typename >
friend class TrackingRecHit2DHeterogeneous
friend

Definition at line 26 of file TrackingRecHit2DSOAView.h.

Member Data Documentation

◆ m_averageGeometry

AverageGeometry* TrackingRecHit2DSOAView::m_averageGeometry
private

◆ m_charge

int32_t* TrackingRecHit2DSOAView::m_charge
private

◆ m_cpeParams

pixelCPEforGPU::ParamsOnGPU const* TrackingRecHit2DSOAView::m_cpeParams
private

◆ m_detInd

uint16_t* TrackingRecHit2DSOAView::m_detInd
private

◆ m_hitsLayerStart

uint32_t* TrackingRecHit2DSOAView::m_hitsLayerStart
private

◆ m_hitsModuleStart

uint32_t const* TrackingRecHit2DSOAView::m_hitsModuleStart
private

◆ m_iphi

int16_t* TrackingRecHit2DSOAView::m_iphi
private

◆ m_nHits

uint32_t TrackingRecHit2DSOAView::m_nHits
private

◆ m_phiBinner

PhiBinner* TrackingRecHit2DSOAView::m_phiBinner
private

◆ m_rg

float * TrackingRecHit2DSOAView::m_rg
private

◆ m_xerr

float* TrackingRecHit2DSOAView::m_xerr
private

◆ m_xg

float* TrackingRecHit2DSOAView::m_xg
private

◆ m_xl

float* TrackingRecHit2DSOAView::m_xl
private

◆ m_xsize

int16_t* TrackingRecHit2DSOAView::m_xsize
private

◆ m_yerr

float * TrackingRecHit2DSOAView::m_yerr
private

◆ m_yg

float * TrackingRecHit2DSOAView::m_yg
private

◆ m_yl

float * TrackingRecHit2DSOAView::m_yl
private

◆ m_ysize

int16_t* TrackingRecHit2DSOAView::m_ysize
private

◆ m_zg

float * TrackingRecHit2DSOAView::m_zg
private
TrackingRecHit2DSOAView::m_iphi
int16_t * m_iphi
Definition: TrackingRecHit2DSOAView.h:81
TrackingRecHit2DSOAView::m_yg
float * m_yg
Definition: TrackingRecHit2DSOAView.h:80
TrackingRecHit2DSOAView::m_hitsLayerStart
uint32_t * m_hitsLayerStart
Definition: TrackingRecHit2DSOAView.h:95
TrackingRecHit2DSOAView::m_xerr
float * m_xerr
Definition: TrackingRecHit2DSOAView.h:77
mps_fire.i
i
Definition: mps_fire.py:428
gpuClustering::maxNumClusters
constexpr uint32_t maxNumClusters
Definition: gpuClusteringConstants.h:31
TrackingRecHit2DSOAView::m_xl
float * m_xl
Definition: TrackingRecHit2DSOAView.h:76
TrackingRecHit2DSOAView::m_nHits
uint32_t m_nHits
Definition: TrackingRecHit2DSOAView.h:99
TrackingRecHit2DSOAView::m_charge
int32_t * m_charge
Definition: TrackingRecHit2DSOAView.h:84
TrackingRecHit2DSOAView::m_ysize
int16_t * m_ysize
Definition: TrackingRecHit2DSOAView.h:86
TrackingRecHit2DSOAView::m_averageGeometry
AverageGeometry * m_averageGeometry
Definition: TrackingRecHit2DSOAView.h:91
TrackingRecHit2DSOAView::m_cpeParams
pixelCPEforGPU::ParamsOnGPU const * m_cpeParams
Definition: TrackingRecHit2DSOAView.h:92
TrackingRecHit2DSOAView::m_yerr
float * m_yerr
Definition: TrackingRecHit2DSOAView.h:77
__device__
#define __device__
Definition: SiPixelGainForHLTonGPU.h:15
__forceinline__
#define __forceinline__
Definition: cudaCompat.h:22
TrackingRecHit2DSOAView::m_phiBinner
PhiBinner * m_phiBinner
Definition: TrackingRecHit2DSOAView.h:97
TrackingRecHit2DSOAView::m_yl
float * m_yl
Definition: TrackingRecHit2DSOAView.h:76
TrackingRecHit2DSOAView::m_xg
float * m_xg
Definition: TrackingRecHit2DSOAView.h:80
TrackingRecHit2DSOAView::m_xsize
int16_t * m_xsize
Definition: TrackingRecHit2DSOAView.h:85
cms::cudacompat::__ldg
T __ldg(T const *x)
Definition: cudaCompat.h:82
TrackingRecHit2DSOAView::m_detInd
uint16_t * m_detInd
Definition: TrackingRecHit2DSOAView.h:87
TrackingRecHit2DSOAView::m_hitsModuleStart
uint32_t const * m_hitsModuleStart
Definition: TrackingRecHit2DSOAView.h:93
TrackingRecHit2DSOAView::m_rg
float * m_rg
Definition: TrackingRecHit2DSOAView.h:80
TrackingRecHit2DSOAView::m_zg
float * m_zg
Definition: TrackingRecHit2DSOAView.h:80