33 template <
typename ProductType,
typename... ARGS>
90 desc.add<
bool>(
"produceDummyIntegrityCollections",
false);
99 digisInEEToken_{consumes<InputProduct>(ps.getParameter<
edm::InputTag>(
"digisInLabelEE"))},
102 digisOutEBToken_{produces<EBDigiCollection>(ps.getParameter<
std::string>(
"digisOutLabelEB"))},
103 digisOutEEToken_{produces<EEDigiCollection>(ps.getParameter<
std::string>(
"digisOutLabelEE"))},
106 produceDummyIntegrityCollections_{ps.getParameter<
bool>(
"produceDummyIntegrityCollections")},
109 ebSrFlagToken_{dummyProduces<EBSrFlagCollection>()},
110 eeSrFlagToken_{dummyProduces<EESrFlagCollection>()},
113 ebIntegrityGainErrorsToken_{dummyProduces<EBDetIdCollection>(
"EcalIntegrityGainErrors")},
114 ebIntegrityGainSwitchErrorsToken_{dummyProduces<EBDetIdCollection>(
"EcalIntegrityGainSwitchErrors")},
115 ebIntegrityChIdErrorsToken_{dummyProduces<EBDetIdCollection>(
"EcalIntegrityChIdErrors")},
118 eeIntegrityGainErrorsToken_{dummyProduces<EEDetIdCollection>(
"EcalIntegrityGainErrors")},
119 eeIntegrityGainSwitchErrorsToken_{dummyProduces<EEDetIdCollection>(
"EcalIntegrityGainSwitchErrors")},
120 eeIntegrityChIdErrorsToken_{dummyProduces<EEDetIdCollection>(
"EcalIntegrityChIdErrors")},
123 integrityTTIdErrorsToken_{dummyProduces<EcalElectronicsIdCollection>(
"EcalIntegrityTTIdErrors")},
124 integrityZSXtalIdErrorsToken_{dummyProduces<EcalElectronicsIdCollection>(
"EcalIntegrityZSXtalIdErrors")},
125 integrityBlockSizeErrorsToken_{dummyProduces<EcalElectronicsIdCollection>(
"EcalIntegrityBlockSizeErrors")},
128 pnDiodeDigisToken_{dummyProduces<EcalPnDiodeDigiCollection>()},
131 ecalTriggerPrimitivesToken_{dummyProduces<EcalTrigPrimDigiCollection>(
"EcalTriggerPrimitives")},
132 ecalPseudoStripInputsToken_{dummyProduces<EcalPSInputDigiCollection>(
"EcalPseudoStripInputs")}
143 auto const& ebdigis = ctx.get(ebdigisProduct);
144 auto const& eedigis = ctx.get(eedigisProduct);
154 dataebtmp.data(), ebdigis.data.get(),
dataebtmp.size() *
sizeof(uint16_t), cudaMemcpyDeviceToHost, ctx.stream()));
156 dataeetmp.data(), eedigis.data.get(),
dataeetmp.size() *
sizeof(uint16_t), cudaMemcpyDeviceToHost, ctx.stream()));
158 idsebtmp.data(), ebdigis.ids.get(),
idsebtmp.size() *
sizeof(uint32_t), cudaMemcpyDeviceToHost, ctx.stream()));
160 idseetmp.data(), eedigis.ids.get(),
idseetmp.size() *
sizeof(uint32_t), cudaMemcpyDeviceToHost, ctx.stream()));
165 auto digisEB = std::make_unique<EBDigiCollection>();
166 auto digisEE = std::make_unique<EEDigiCollection>();
173 auto* dataEB =
const_cast<uint16_t*
>(digisEB->data().data());
174 auto* dataEE =
const_cast<uint16_t*
>(digisEE->data().data());
175 auto* idsEB =
const_cast<uint32_t*
>(digisEB->ids().data());
176 auto* idsEE =
const_cast<uint32_t*
>(digisEE->ids().data());
edm::EDPutTokenT< EcalPSInputDigiCollection > ecalPseudoStripInputsToken_
std::vector< uint16_t, cms::cuda::HostAllocator< uint16_t > > dataeetmp
T getParameter(std::string const &) const
edm::EDPutTokenT< ProductType > dummyProduces(ARGS &&... args)
edm::EDGetTokenT< InputProduct > digisInEEToken_
edm::EDPutTokenT< EEDetIdCollection > eeIntegrityGainSwitchErrorsToken_
edm::EDPutTokenT< EBDetIdCollection > ebIntegrityGainErrorsToken_
std::vector< uint16_t, cms::cuda::HostAllocator< uint16_t > > dataebtmp
edm::EDPutTokenT< EEDetIdCollection > eeIntegrityGainErrorsToken_
edm::EDGetTokenT< InputProduct > digisInEBToken_
edm::EDPutTokenT< EcalElectronicsIdCollection > integrityZSXtalIdErrorsToken_
edm::EDPutTokenT< EEDigiCollection > digisOutEEToken_
edm::EDPutTokenT< EBDetIdCollection > ebIntegrityChIdErrorsToken_
bool produceDummyIntegrityCollections_
edm::EDPutTokenT< EBDigiCollection > digisOutEBToken_
#define DEFINE_FWK_MODULE(type)
edm::EDPutTokenT< EESrFlagCollection > eeSrFlagToken_
std::vector< uint32_t, cms::cuda::HostAllocator< uint32_t > > idseetmp
void acquire(edm::Event const &, edm::EventSetup const &, edm::WaitingTaskWithArenaHolder) override
edm::EDPutTokenT< EcalPnDiodeDigiCollection > pnDiodeDigisToken_
edm::EDPutTokenT< EBDetIdCollection > ebIntegrityGainSwitchErrorsToken_
edm::EDPutTokenT< EcalElectronicsIdCollection > integrityTTIdErrorsToken_
edm::EDPutTokenT< EcalTrigPrimDigiCollection > ecalTriggerPrimitivesToken_
~EcalCPUDigisProducer() override=default
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptions(edm::ConfigurationDescriptions &)
edm::EDPutTokenT< EEDetIdCollection > eeIntegrityChIdErrorsToken_
void produce(edm::Event &, edm::EventSetup const &) override
static constexpr int MAXSAMPLES
#define cudaCheck(ARG,...)
EcalCPUDigisProducer(edm::ParameterSet const &ps)
edm::EDPutTokenT< EcalElectronicsIdCollection > integrityBlockSizeErrorsToken_
edm::EDPutTokenT< EBSrFlagCollection > ebSrFlagToken_
std::vector< uint32_t, cms::cuda::HostAllocator< uint32_t > > idsebtmp