36 std::unique_ptr<HGCeeRecHitCollection>
rechits_;
46 std::unique_ptr<hgcal::RecHitTools>
tools_;
60 : uncalibRecHitCPUToken_{consumes<HGCUncalibratedRecHitCollection>(
62 recHitGPUToken_{produces<cms::cuda::Product<HGCRecHitGPUProduct>>()} {
63 cdata_.keV2DIGI_ = ps.getParameter<
double>(
"HGCEE_keV2DIGI");
64 cdata_.xmin_ = ps.getParameter<
double>(
"minValSiPar");
65 cdata_.xmax_ = ps.getParameter<
double>(
"maxValSiPar");
66 cdata_.aterm_ = ps.getParameter<
double>(
"noiseSiPar");
67 cdata_.cterm_ = ps.getParameter<
double>(
"constSiPar");
68 vdata_.fCPerMIP_ = ps.getParameter<std::vector<double>>(
"HGCEE_fCPerMIP");
69 vdata_.cce_ = ps.getParameter<
edm::ParameterSet>(
"HGCEE_cce").getParameter<std::vector<double>>(
"values");
70 vdata_.noise_fC_ = ps.getParameter<
edm::ParameterSet>(
"HGCEE_noise_fC").getParameter<std::vector<double>>(
"values");
71 vdata_.rcorr_ = ps.getParameter<std::vector<double>>(
"rcorr");
72 vdata_.weights_ = ps.getParameter<std::vector<double>>(
"weights");
73 cdata_.uncalib2GeV_ = 1
e-6 / cdata_.keV2DIGI_;
74 assert_sizes_constants_(vdata_);
77 convert_constant_data_(kcdata_);
79 tools_ = std::make_unique<hgcal::RecHitTools>();
87 std::string str3 =
" to hold the configuration data, but is of size ";
116 rechits_ = std::make_unique<HGCRecHitCollection>();
void produce(edm::Event &, const edm::EventSetup &) override
std::vector< double > cce_
edm::EDGetTokenT< HGCeeUncalibratedRecHitCollection > uncalibRecHitCPUToken_
T getParameter(std::string const &) const
HGCUncalibRecHitHost< HGCeeUncalibratedRecHitCollection > h_uncalib_
static constexpr size_t ee_rcorr
for(int i=first, nt=offsets[nh];i< nt;i+=gridDim.x *blockDim.x)
static constexpr size_t ee_cce
double noise_fC_[ee_noise_fC]
static constexpr size_t ee_noise_fC
void convert_constant_data_(KernelConstantData< HGCeeUncalibRecHitConstantData > *)
std::unique_ptr< HGCeeRecHitCollection > rechits_
double fCPerMIP_[ee_fCPerMIP]
Log< level::Error, false > LogError
KernelConstantData< HGCeeUncalibRecHitConstantData > * kcdata_
static std::string to_string(const XMLCh *ch)
double weights_[ee_weights]
static constexpr size_t ee_fCPerMIP
HGCUncalibRecHitDevice d_uncalib_
void run_kernels(const KernelConstantData< HGCeeUncalibRecHitConstantData > *, const cudaStream_t &)
#define DEFINE_FWK_MODULE(type)
EERecHitGPU(const edm::ParameterSet &ps)
std::vector< DeviationSensor2D * > vd
void convert_collection_data_to_soa_(const uint32_t &, const HGCeeUncalibratedRecHitCollection &)
HGCUncalibRecHitSoA get() const
std::string assert_error_message_(std::string, const size_t &, const size_t &)
HGCConstantVectorData vdata_
HGCeeUncalibRecHitConstantData cdata_
void beginRun(edm::Run const &, edm::EventSetup const &) override
std::vector< double > noise_fC_
HGCConstantVectorData vdata_
HGCRecHitGPUProduct prod_
std::unique_ptr< hgcal::RecHitTools > tools_
static constexpr size_t ee_weights
std::vector< double > rcorr_
edm::EDPutTokenT< cms::cuda::Product< HGCRecHitGPUProduct > > recHitGPUToken_
std::vector< double > fCPerMIP_
void assert_sizes_constants_(const HGCConstantVectorData &)
std::vector< double > weights_