Go to the documentation of this file. 1 #ifndef CUDADataFormats_TrackingRecHit_interface_TrackingRecHit2DHeterogeneous_h
2 #define CUDADataFormats_TrackingRecHit_interface_TrackingRecHit2DHeterogeneous_h
7 template <
typename Traits>
50 static constexpr uint32_t
n16 = 4;
51 static constexpr uint32_t
n32 = 10;
52 static_assert(
sizeof(uint32_t) ==
sizeof(
float));
80 template <
typename Traits>
84 uint32_t
const* hitsModuleStart,
87 : m_nHits(
nHits), m_hitsModuleStart(hitsModuleStart) {
132 reinterpret_cast<TrackingRecHit2DSOAView::PhiBinner::index_type*>(get32(9));
150 view->
m_xsize = reinterpret_cast<int16_t*>(get16(2));
151 view->
m_ysize = reinterpret_cast<int16_t*>(get16(3));
166 #endif // CUDADataFormats_TrackingRecHit_interface_TrackingRecHit2DHeterogeneous_h
TrackingRecHit2DSOAView * view()
uint32_t * m_hitsLayerStart
static const std::string input
unique_ptr< TrackingRecHit2DSOAView > m_view
~TrackingRecHit2DHeterogeneous()=default
constexpr uint32_t numberOfLayers
uint32_t const T *__restrict__ const uint32_t *__restrict__ int32_t int Histo::index_type cudaStream_t stream
static constexpr uint32_t n16
PhiBinner::index_type * m_phiBinnerStorage
typename Base::index_type index_type
const caConstants::TupleMultiplicity *__restrict__ const HitsOnGPU *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ uint32_t nHits
void copyFromGPU(TrackingRecHit2DHeterogeneous< cms::cudacompat::GPUTraits > const *input, cudaStream_t stream)
uint32_t const * m_hitsModuleStart
typename Traits::template unique_ptr< T > unique_ptr
unique_ptr< uint16_t[]> m_store16
static constexpr uint32_t n32
AverageGeometry * m_averageGeometry
auto hitsModuleStart() const
pixelCPEforGPU::ParamsOnGPU const * m_cpeParams
def template(fileName, svg, replaceme="REPLACEME")
unique_ptr< TrackingRecHit2DSOAView::AverageGeometry > m_AverageGeometryStore
cms::cuda::HistoContainer< int16_t, 128, -1, 8 *sizeof(int16_t), hindex_type, 10 > PhiBinner
TrackingRecHit2DHeterogeneous & operator=(const TrackingRecHit2DHeterogeneous &)=delete
unique_ptr< float[]> m_store32
std::unique_ptr< T, impl::HostDeleter > unique_ptr
PhiBinner::index_type * m_phiBinnerStorage
unique_ptr< TrackingRecHit2DSOAView::PhiBinner > m_PhiBinnerStore
TrackingRecHit2DSOAView const * view() const
TrackingRecHit2DHeterogeneous()=default
cms::cuda::host::unique_ptr< uint32_t[]> hitsModuleStartToHostAsync(cudaStream_t stream) const
uint32_t * m_hitsLayerStart
cms::cuda::host::unique_ptr< float[]> localCoordToHostAsync(cudaStream_t stream) const
uint32_t const * m_hitsModuleStart
void copyAsync(device::unique_ptr< T > &dst, const host::unique_ptr< T > &src, cudaStream_t stream)