src
CondFormats
HcalObjects
interface
HcalRecoParamWithPulseShapeHost.h
Go to the documentation of this file.
1
#ifndef CondFormats_HcalObjects_interface_HcalRecoParamWithPulseShapeHost_h
2
#define CondFormats_HcalObjects_interface_HcalRecoParamWithPulseShapeHost_h
3
4
#include "
CondFormats/HcalObjects/interface/HcalRecoParamWithPulseShapeT.h
"
5
#include "
DataFormats/Portable/interface/PortableCollection.h
"
6
#include "
DataFormats/Portable/interface/PortableHostCollection.h
"
7
8
namespace
hcal
{
9
using
HcalRecoParamWithPulseShapeHost
=
HcalRecoParamWithPulseShapeT<alpaka::DevCpu>
;
10
}
11
namespace
cms::alpakatools
{
12
template
<>
13
struct
CopyToDevice
<::
hcal::HcalRecoParamWithPulseShapeHost
> {
14
template
<
typename
TQueue>
15
static
auto
copyAsync
(TQueue&
queue
, ::
hcal::HcalRecoParamWithPulseShapeHost
const
& hostProduct) {
16
using
RecoParamCopy =
CopyToDevice<::hcal::HcalRecoParamWithPulseShapeHost::RecoParamCollection>
;
17
using
PulseShapeCopy =
CopyToDevice<::hcal::HcalRecoParamWithPulseShapeHost::PulseShapeCollection>
;
18
using
Device = alpaka::Dev<TQueue>;
19
return ::hcal::HcalRecoParamWithPulseShapeT<Device>(
RecoParamCopy::copyAsync
(
queue
, hostProduct.
recoParam
()),
20
PulseShapeCopy::copyAsync
(
queue
, hostProduct.
pulseShape
()));
21
}
22
};
23
}
// namespace cms::alpakatools
24
25
#endif
hcal::HcalRecoParamWithPulseShapeT
Definition:
HcalRecoParamWithPulseShapeT.h:10
PortableHostCollection.h
PortableCollection.h
cms::alpakatools::CopyToDevice<::hcal::HcalRecoParamWithPulseShapeHost >::copyAsync
static auto copyAsync(TQueue &queue, ::hcal::HcalRecoParamWithPulseShapeHost const &hostProduct)
Definition:
HcalRecoParamWithPulseShapeHost.h:15
hcal::HcalRecoParamWithPulseShapeT::recoParam
const RecoParamCollection & recoParam() const
Definition:
HcalRecoParamWithPulseShapeT.h:44
cms::alpakatools::CopyToDevice
Definition:
CopyToDevice.h:32
createBeamHaloJobs.queue
queue
Definition:
createBeamHaloJobs.py:343
cms::alpakatools
Definition:
HcalRecoParamWithPulseShapeHost.h:11
hcal
Definition:
ConfigurationDatabase.cc:13
cms::cuda::copyAsync
void copyAsync(device::unique_ptr< T > &dst, const host::unique_ptr< T > &src, cudaStream_t stream)
Definition:
copyAsync.h:20
hcal::HcalRecoParamWithPulseShapeT::pulseShape
const PulseShapeCollection & pulseShape() const
Definition:
HcalRecoParamWithPulseShapeT.h:45
HcalRecoParamWithPulseShapeT.h
Generated for CMSSW Reference Manual by
1.8.14