CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
TrackingRecHitSoAHost< TrackerTraits > Class Template Reference

#include <TrackingRecHitSoAHost.h>

Inheritance diagram for TrackingRecHitSoAHost< TrackerTraits >:
cms::cuda::PortableHostCollection< TrackingRecHitLayout< TrackerTraits > >

Public Types

using AverageGeometry = typename hitSoA::AverageGeometry
 
using hitSoA = TrackingRecHitSoA< TrackerTraits >
 
using ParamsOnGPU = typename hitSoA::ParamsOnGPU
 
using PhiBinner = typename hitSoA::PhiBinner
 
using PhiBinnerStorageType = typename hitSoA::PhiBinnerStorageType
 
- Public Types inherited from cms::cuda::PortableHostCollection< TrackingRecHitLayout< TrackerTraits > >
using Buffer = cms::cuda::host::unique_ptr< std::byte[]>
 
using ConstView = typename Layout::ConstView
 
using Layout = TrackingRecHitLayout< TrackerTraits >
 
using View = typename Layout::View
 

Public Member Functions

uint32_t nHits () const
 
uint32_t offsetBPIX2 () const
 
 TrackingRecHitSoAHost ()=default
 
 TrackingRecHitSoAHost (uint32_t nHits)
 
 TrackingRecHitSoAHost (uint32_t nHits, cudaStream_t stream)
 
 TrackingRecHitSoAHost (uint32_t nHits, int32_t offsetBPIX2, ParamsOnGPU const *cpeParams, uint32_t const *hitsModuleStart)
 
 TrackingRecHitSoAHost (uint32_t nHits, int32_t offsetBPIX2, ParamsOnGPU const *cpeParams, uint32_t const *hitsModuleStart, cudaStream_t stream)
 
- Public Member Functions inherited from cms::cuda::PortableHostCollection< TrackingRecHitLayout< TrackerTraits > >
Bufferbuffer ()
 
Buffer const & buffer () const
 
size_t bufferSize () const
 
Buffer const & const_buffer () const
 
ConstView const & const_view () const
 
Viewoperator* ()
 
ConstView const & operator* () const
 
Viewoperator-> ()
 
ConstView const * operator-> () const
 
PortableHostCollectionoperator= (PortableHostCollection const &)=delete
 
PortableHostCollectionoperator= (PortableHostCollection &&)=default
 
 PortableHostCollection ()=default
 
 PortableHostCollection (int32_t elements)
 
 PortableHostCollection (int32_t elements, cudaStream_t stream)
 
 PortableHostCollection (PortableHostCollection const &)=delete
 
 PortableHostCollection (PortableHostCollection &&)=default
 
Viewview ()
 
ConstView const & view () const
 
 ~PortableHostCollection ()=default
 

Private Attributes

uint32_t offsetBPIX2_ = 0
 

Additional Inherited Members

- Static Public Member Functions inherited from cms::cuda::PortableHostCollection< TrackingRecHitLayout< TrackerTraits > >
static void ROOTReadStreamer (PortableHostCollection *newObj, Layout const &layout)
 

Detailed Description

template<typename TrackerTraits>
class TrackingRecHitSoAHost< TrackerTraits >

Definition at line 12 of file TrackingRecHitSoAHost.h.

Member Typedef Documentation

◆ AverageGeometry

template<typename TrackerTraits >
using TrackingRecHitSoAHost< TrackerTraits >::AverageGeometry = typename hitSoA::AverageGeometry

Definition at line 23 of file TrackingRecHitSoAHost.h.

◆ hitSoA

template<typename TrackerTraits >
using TrackingRecHitSoAHost< TrackerTraits >::hitSoA = TrackingRecHitSoA<TrackerTraits>

Definition at line 14 of file TrackingRecHitSoAHost.h.

◆ ParamsOnGPU

template<typename TrackerTraits >
using TrackingRecHitSoAHost< TrackerTraits >::ParamsOnGPU = typename hitSoA::ParamsOnGPU

Definition at line 24 of file TrackingRecHitSoAHost.h.

◆ PhiBinner

template<typename TrackerTraits >
using TrackingRecHitSoAHost< TrackerTraits >::PhiBinner = typename hitSoA::PhiBinner

Definition at line 26 of file TrackingRecHitSoAHost.h.

◆ PhiBinnerStorageType

template<typename TrackerTraits >
using TrackingRecHitSoAHost< TrackerTraits >::PhiBinnerStorageType = typename hitSoA::PhiBinnerStorageType

Definition at line 25 of file TrackingRecHitSoAHost.h.

Constructor & Destructor Documentation

◆ TrackingRecHitSoAHost() [1/5]

template<typename TrackerTraits >
TrackingRecHitSoAHost< TrackerTraits >::TrackingRecHitSoAHost ( )
default

◆ TrackingRecHitSoAHost() [2/5]

template<typename TrackerTraits >
TrackingRecHitSoAHost< TrackerTraits >::TrackingRecHitSoAHost ( uint32_t  nHits)
inlineexplicit

◆ TrackingRecHitSoAHost() [3/5]

template<typename TrackerTraits >
TrackingRecHitSoAHost< TrackerTraits >::TrackingRecHitSoAHost ( uint32_t  nHits,
cudaStream_t  stream 
)
inlineexplicit

Definition at line 33 of file TrackingRecHitSoAHost.h.

uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream

◆ TrackingRecHitSoAHost() [4/5]

template<typename TrackerTraits >
TrackingRecHitSoAHost< TrackerTraits >::TrackingRecHitSoAHost ( uint32_t  nHits,
int32_t  offsetBPIX2,
ParamsOnGPU const *  cpeParams,
uint32_t const *  hitsModuleStart 
)
inlineexplicit

Definition at line 36 of file TrackingRecHitSoAHost.h.

References SplitLinear::begin, filterCSVwithJSON::copy, TrackingRecHitSoAHost< TrackerTraits >::nHits(), phase1PixelTopology::numberOfModules, TrackingRecHitSoAHost< TrackerTraits >::offsetBPIX2(), and cms::cuda::PortableHostCollection< TrackingRecHitLayout< TrackerTraits > >::view().

◆ TrackingRecHitSoAHost() [5/5]

template<typename TrackerTraits >
TrackingRecHitSoAHost< TrackerTraits >::TrackingRecHitSoAHost ( uint32_t  nHits,
int32_t  offsetBPIX2,
ParamsOnGPU const *  cpeParams,
uint32_t const *  hitsModuleStart,
cudaStream_t  stream 
)
inlineexplicit

Definition at line 47 of file TrackingRecHitSoAHost.h.

References SplitLinear::begin, filterCSVwithJSON::copy, TrackingRecHitSoAHost< TrackerTraits >::nHits(), phase1PixelTopology::numberOfModules, TrackingRecHitSoAHost< TrackerTraits >::offsetBPIX2(), and cms::cuda::PortableHostCollection< TrackingRecHitLayout< TrackerTraits > >::view().

54  view().nHits() = nHits;
55  std::copy(hitsModuleStart, hitsModuleStart + TrackerTraits::numberOfModules + 1, view().hitsModuleStart().begin());
56  memcpy(&(view().cpeParams()), cpeParams, sizeof(ParamsOnGPU));
57  view().offsetBPIX2() = offsetBPIX2;
58  }
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
constexpr uint16_t numberOfModules
typename hitSoA::ParamsOnGPU ParamsOnGPU
uint32_t offsetBPIX2() const

Member Function Documentation

◆ nHits()

template<typename TrackerTraits >
uint32_t TrackingRecHitSoAHost< TrackerTraits >::nHits ( ) const
inline

◆ offsetBPIX2()

template<typename TrackerTraits >
uint32_t TrackingRecHitSoAHost< TrackerTraits >::offsetBPIX2 ( ) const
inline

Definition at line 61 of file TrackingRecHitSoAHost.h.

References TrackingRecHitSoAHost< TrackerTraits >::offsetBPIX2_.

Referenced by CAHitNtupletGeneratorOnGPU< TrackerTraits >::makeTuples(), and TrackingRecHitSoAHost< TrackerTraits >::TrackingRecHitSoAHost().

61  {
62  return offsetBPIX2_;
63  } //offsetBPIX2 is used on host functions so is useful to have it also stored in the class and not only in the layout

Member Data Documentation

◆ offsetBPIX2_

template<typename TrackerTraits >
uint32_t TrackingRecHitSoAHost< TrackerTraits >::offsetBPIX2_ = 0
private