CMS 3D CMS Logo

HGCRecHitSoA.h
Go to the documentation of this file.
1 #ifndef CUDADataFormats_HGCal_HGCRecHitSoA_h
2 #define CUDADataFormats_HGCal_HGCRecHitSoA_h
3 
4 #include <cstdint>
5 
6 class HGCRecHitSoA {
7 public:
8  float *energy_; //calibrated energy of the rechit
9  float *time_; //time jitter of the UncalibRecHit
10  float *timeError_; //time resolution
11  uint32_t *id_; //rechit detId
12  uint32_t *flagBits_; //rechit flags describing its status (DataFormats/HGCRecHit/interface/HGCRecHit.h)
13  uint8_t *son_; //signal over noise
14 
15  uint32_t nbytes_; //number of bytes of the SoA
16  uint32_t nhits_; //number of hits stored in the SoA
17  uint32_t pad_; //pad of memory block (used for warp alignment, slightly larger than 'nhits_')
18 };
19 
20 namespace memory {
21  namespace npointers {
22  constexpr unsigned float_hgcrechits_soa = 3; //number of float pointers in the rechits SoA
23  constexpr unsigned uint32_hgcrechits_soa = 2; //number of uint32_t pointers in the rechits SoA
24  constexpr unsigned uint8_hgcrechits_soa = 1; //number of uint8_t pointers in the rechits SoA
25  constexpr unsigned ntypes_hgcrechits_soa = 3; //number of different pointer types in the rechits SoA
26  } // namespace npointers
27 } // namespace memory
28 
29 #endif //CUDADataFormats_HGCal_HGCRecHitSoA_h
constexpr unsigned uint8_hgcrechits_soa
Definition: HGCRecHitSoA.h:24
uint32_t * flagBits_
Definition: HGCRecHitSoA.h:12
uint32_t * id_
Definition: HGCRecHitSoA.h:11
uint8_t * son_
Definition: HGCRecHitSoA.h:13
float * energy_
Definition: HGCRecHitSoA.h:8
uint32_t pad_
Definition: HGCRecHitSoA.h:17
uint32_t nbytes_
Definition: HGCRecHitSoA.h:15
constexpr unsigned ntypes_hgcrechits_soa
Definition: HGCRecHitSoA.h:25
constexpr unsigned float_hgcrechits_soa
Definition: HGCRecHitSoA.h:22
constexpr unsigned uint32_hgcrechits_soa
Definition: HGCRecHitSoA.h:23
float * time_
Definition: HGCRecHitSoA.h:9
float * timeError_
Definition: HGCRecHitSoA.h:10
uint32_t nhits_
Definition: HGCRecHitSoA.h:16