|
|
Go to the documentation of this file.
54 std::vector<int>
feds(nFeds);
55 for (
int i = 0;
i < nFeds; ++
i)
57 desc.add<std::vector<int>>(
"FEDs",
feds);
58 desc.add<uint32_t>(
"maxChannelsF01HE", 10000u);
59 desc.add<uint32_t>(
"maxChannelsF5HB", 10000u);
60 desc.add<uint32_t>(
"maxChannelsF3HB", 10000u);
61 desc.add<uint32_t>(
"nsamplesF01HE", 8);
62 desc.add<uint32_t>(
"nsamplesF5HB", 8);
63 desc.add<uint32_t>(
"nsamplesF3HB", 8);
74 digisF01HEToken_{produces<ProductTypef01>(ps.getParameter<
std::string>(
"digisLabelF01HE"))},
75 digisF5HBToken_{produces<ProductTypef5>(ps.getParameter<
std::string>(
"digisLabelF5HB"))},
76 digisF3HBToken_{produces<ProductTypef3>(ps.getParameter<
std::string>(
"digisLabelF3HB"))},
77 fedsToUnpack_{ps.getParameter<std::vector<int>>(
"FEDs")} {
78 config_.maxChannelsF01HE = ps.getParameter<uint32_t>(
"maxChannelsF01HE");
79 config_.maxChannelsF5HB = ps.getParameter<uint32_t>(
"maxChannelsF5HB");
80 config_.maxChannelsF3HB = ps.getParameter<uint32_t>(
"maxChannelsF3HB");
81 config_.nsamplesF01HE = ps.getParameter<uint32_t>(
"nsamplesF01HE");
82 config_.nsamplesF5HB = ps.getParameter<uint32_t>(
"nsamplesF5HB");
83 config_.nsamplesF3HB = ps.getParameter<uint32_t>(
"nsamplesF3HB");
97 auto const& eMappingProduct = eMappingHandle->
getProduct(ctx.stream());
135 uint32_t currentCummOffset = 0;
139 auto const nbytes =
data.size();
145 #ifdef HCAL_RAWDECODE_CPUDEBUG
146 printf(
"fed = %d nbytes = %lu\n", fed, nbytes);
150 std::memcpy(inputCPU.
data.get() + currentCummOffset,
data.data(), nbytes);
156 currentCummOffset += nbytes;
175 #ifdef HCAL_RAWDECODE_CPUDEBUG
176 printf(
"f01he channels = %u f5hb channesl = %u\n",
edm::EDPutTokenT< ProductTypef3 > digisF3HBToken_
device::impl::make_device_unique_selector< T >::non_array make_device_unique(cudaStream_t stream)
static void fillDescriptions(edm::ConfigurationDescriptions &)
void produce(edm::Event &, edm::EventSetup const &) override
hcal::raw::ConfigurationParameters config_
constexpr uint8_t OutputF01HE
hcal::raw::OutputDataCPU outputCPU_
DigiCollection< Flavor5, ::calo::common::DevStoragePolicy > digisF5HB
edm::EDPutTokenT< ProductTypef01 > digisF01HEToken_
constexpr uint8_t OutputF5HB
#define DEFINE_FWK_MODULE(type)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
edm::EDPutTokenT< ProductTypef5 > digisF5HBToken_
HcalRawToDigiGPU(edm::ParameterSet const &ps)
constexpr int32_t empty_event_size
const FEDRawData & FEDData(int fedid) const
retrieve data for fed
constexpr uint32_t numOutputCollections
void acquire(edm::Event const &, edm::EventSetup const &, edm::WaitingTaskWithArenaHolder) override
constexpr uint32_t nbytes_per_fed_max
std::vector< int > fedsToUnpack_
const Product & getProduct(cudaStream_t) const
void entryPoint(InputDataCPU const &, InputDataGPU &, OutputDataGPU &, ScratchDataGPU &, OutputDataCPU &, ConditionsProducts const &, ConfigurationParameters const &, cudaStream_t cudaStream, uint32_t const, uint32_t const)
static std::atomic< unsigned int > counter
DigiCollection< Flavor1, ::calo::common::DevStoragePolicy > digisF01HE
hcal::raw::OutputDataGPU outputGPU_
cms::cuda::host::unique_ptr< uint32_t[]> nchannels
DigiCollection< Flavor3, ::calo::common::DevStoragePolicy > digisF3HB
constexpr uint8_t OutputF3HB
T getParameter(std::string const &) const
char data[epos_bytes_allocation]
void allocate(ConfigurationParameters const &config, cudaStream_t cudaStream)
edm::EDGetTokenT< FEDRawDataCollection > rawDataToken_
host::impl::make_host_unique_selector< T >::non_array make_host_unique(cudaStream_t stream)
cms::cuda::ContextState cudaState_
~HcalRawToDigiGPU() override
constexpr uint32_t utca_nfeds_max