27 hostProduct->sigmaZ =
beamspot.sigmaZ();
28 hostProduct->beamWidthX =
beamspot.BeamWidthX();
29 hostProduct->beamWidthY =
beamspot.BeamWidthY();
32 hostProduct->emittanceX =
beamspot.emittanceX();
33 hostProduct->emittanceY =
beamspot.emittanceY();
34 hostProduct->betaStar =
beamspot.betaStar();
36 if constexpr (std::is_same_v<Device, alpaka::DevCpu>) {
40 alpaka::memcpy(
event.queue(), deviceProduct.buffer(), hostProduct.const_buffer());
const device::EDPutToken< BeamSpotDevice > deviceToken_
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
PortableHostObject< BeamSpotPOD > BeamSpotHost
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
const edm::EDGetTokenT< reco::BeamSpot > legacyToken_
void produce(edm::StreamID, device::Event &event, device::EventSetup const &setup) const override
BeamSpotDeviceProducer(edm::ParameterSet const &config)
auto produces(std::string instanceName) noexcept
declare what type of product will make and with which optional label
#define DEFINE_FWK_ALPAKA_MODULE(name)
PortableObject< BeamSpotPOD > BeamSpotDevice