12 double hitEnergyMinimum,
13 int hitMultiplicityThreshold,
14 const std::vector<edm::ParameterSet>& pulseShapeParameterSets)
15 : hitEnergyMinimum_(hitEnergyMinimum),
16 hitMultiplicityThreshold_(hitMultiplicityThreshold),
17 nominalPedestal_(nominalPedestal),
18 frontEndMap_(nullptr) {
19 const unsigned sz = pulseShapeParameterSets.size();
21 for (
unsigned iPSet = 0; iPSet < sz; iPSet++) {
23 const std::vector<double>&
params = pset.
getParameter<std::vector<double> >(
"pulseShapeParameters");
36 for (
int iRm = 0; iRm < sz; iRm++) {
44 for (
unsigned i = 0;
i < sz;
i++)
50 edm::LogError(
"HBHEStatusBitSetter") <<
"No HcalFrontEndMap in rememberHit";
65 edm::LogError(
"HBHEStatusBitSetter") <<
"No HcalFrontEndMap in SetFlagsFromDigi";
74 double nominal_charge_total = 0.0;
75 double charge_max3 = -100.0;
76 double charge_late3 = -100.0;
77 unsigned int slice_max3 = 0;
84 for (
unsigned int iSlice = 0; iSlice <
size; iSlice++) {
92 double qsum3 = digi[iSlice].nominal_fC() + digi[iSlice - 1].nominal_fC() + digi[iSlice - 2].nominal_fC() -
94 if (qsum3 > charge_max3) {
100 if ((4 + slice_max3) > size)
102 charge_late3 = digi[slice_max3 + 1].nominal_fC() + digi[slice_max3 + 2].nominal_fC() +
122 edm::LogError(
"HBHEStatusBitSetter") <<
"No HcalFrontEndMap in SetFlagsFromRecHits";
constexpr float energy() const
constexpr const DetId & detid() const
std::vector< int > hpdMultiplicity_
const int lookupRMIndex(DetId fId) const
Log< level::Error, false > LogError
constexpr void setFlagField(uint32_t value, int base, int width=1)
void SetFrontEndMap(const HcalFrontEndMap *m)
const HcalFrontEndMap * frontEndMap_
void rememberHit(const HBHERecHit &hbhe)
std::vector< T >::iterator iterator
constexpr int size() const
total number of samples in the digi
const_iterator end() const
std::vector< std::vector< double > > pulseShapeParameters_
T getParameter(std::string const &) const
int hitMultiplicityThreshold_
void SetFlagsFromDigi(HBHERecHit &hbhe, const HBHEDataFrame &digi, const HcalCoder &coder, const HcalCalibrations &calib)
virtual void adc2fC(const HBHEDataFrame &df, CaloSamples &lf) const =0
const int maxRMIndex() const
tuple size
Write out results.
void SetFlagsFromRecHits(HBHERecHitCollection &rec)
const_iterator begin() const