1 #ifndef DataFormats_TrackingRecHitSoA_interface_TrackingRecHitSoADevice_h 2 #define DataFormats_TrackingRecHitSoA_interface_TrackingRecHitSoADevice_h 6 #include <alpaka/alpaka.hpp> 12 template <
typename TrackerTraits,
typename TDev>
25 template <
typename TQueue>
28 const auto device = alpaka::getDev(
queue);
33 alpaka::memcpy(
queue, start_d, start_h);
37 alpaka::memcpy(
queue, off_d, off_h);
40 uint32_t
nHits()
const {
return view().metadata().size(); }
47 template <
typename TQueue>
51 alpaka::memcpy(
queue, off_h, off_d);
59 #endif // DataFormats_RecHits_interface_TrackingRecHitSoADevice_h typename TrackingRecHitSoA< TrackerTraits >::template TrackingRecHitSoALayout<> TrackingRecHitLayout
constexpr uint16_t numberOfModules
TrackingRecHitDevice()=default
void updateFromDevice(TQueue queue)
ConstView const & const_view() const
int32_t offsetBPIX2() const
char data[epos_bytes_allocation]
TrackingRecHitDevice(TQueue queue, uint32_t nHits, int32_t offsetBPIX2, uint32_t const *hitsModuleStart)
uint32_t const * hitsModuleStart() const