33 const auto& dweights = ps.
getParameter < std::vector<double> > (
"layerWeights");
34 for (
auto weight : dweights)
42 const auto& rcorr = ps.
getParameter < std::vector<double> > (
"thicknessCorrection");
45 for (
auto corr : rcorr)
99 float sigmaNoiseGeV = 0.f;
100 unsigned int layer =
tools_->getLayerWithOffset(detid);
101 float cce_correction = 1.0;
104 switch (detid.
det()) {
153 << detid.
rawId() <<
" is not HGC!";
159 const double new_E = myrechit.
energy() * (thickness == -1 ? 1.0 :
rcorr_[thickness])/cce_correction;
162 myrechit.setEnergy(new_E);
163 myrechit.setSignalOverSigmaNoise(new_E/sigmaNoiseGeV);
constexpr float energy() const
T getParameter(std::string const &) const
std::vector< float > weights_
std::vector< double > hgcEE_cce_
std::array< const HGCalDDDConstants *, 3 > ddds_
std::vector< double > hgcHEF_fCPerMIP_
std::vector< double > hgcEE_fCPerMIP_
constexpr uint32_t rawId() const
get the raw id
void push_back(T const &t)
std::vector< double > hgcEE_noise_fC_
double hgchebUncalib2GeV_
std::vector< double > hgcHEF_cce_
~HGCalRecHitWorkerSimple() override
std::vector< double > hgcHEF_noise_fC_
int type() const
get the type
std::vector< double > rcorr_
const HGCalTopology & topology() const
void set(const edm::EventSetup &es) override
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
std::unique_ptr< hgcal::RecHitTools > tools_
const HGCalDDDConstants & dddConstants() const
double hgchefUncalib2GeV_
HGCalRecHitWorkerSimple(const edm::ParameterSet &)
bool run(const edm::Event &evt, const HGCUncalibratedRecHit &uncalibRH, HGCRecHitCollection &result) override
#define DEFINE_EDM_PLUGIN(factory, type, name)
std::unique_ptr< HGCalRecHitSimpleAlgo > rechitMaker_
constexpr Detector det() const
get the detector field from this detid