14 bool* isTimingReliable)
const {
22 if (charge < minCharge) {
23 *isTimingReliable =
false;
33 *isTimingReliable =
false;
47 if (minTimeShape(charge) <= trise && trise <= maxTimeShape(charge))
55 const bool flaggedBadInDB[2],
56 const bool expectSingleAnodePMT) {
59 throw cms::Exception(
"HFPhase1BadConfig") <<
"In HFFlexibleTimeCheck::reconstruct: algorithm is not configured";
69 bool setAsymmetryFlag =
true;
71 using namespace CaloRecHitAuxSetter;
78 if (setAsymmetryFlag) {
79 bool passesAsymmetryCut =
true;
82 const float q = prehit.
charge();
85 passesAsymmetryCut = minAsymm <= qAsymm.first && qAsymm.first <= maxAsymm;
87 if (!passesAsymmetryCut)
float minChargeForOvershoot() const
unsigned determineAnodeStatus(unsigned anodeNumber, const HFQIE10Info &anode, bool *isTimingReliable) const override
float minChargeAsymm() const
constexpr float UNKNOWN_T_DLL_FAILURE
const HFPhase1PMTParams * algoConf_
bool isDataframeOK(bool checkAllTimeSlices=false) const
constexpr uint32_t rawId() const
get the raw id
bool alwaysCalculatingQAsym() const
constexpr void setFlagField(uint32_t value, int base, int width=1)
constexpr float UNKNOWN_T_UNDERSHOOT
static const unsigned OFF_STATUS
const Item & at(const HcalDetId &id) const
constexpr HcalDetId id() const
constexpr float UNKNOWN_T_OVERSHOOT
HFRecHit reconstruct(const HFPreRecHit &prehit, const HcalCalibrations &calibs, const bool flaggedBadInDB[2], bool expectSingleAnodePMT) override
static const unsigned MASK_STATUS
const AbsHcalFunctor & cut(const unsigned which) const
constexpr float timeRising() const
constexpr unsigned getField(const uint32_t u, const unsigned mask, const unsigned offset)
constexpr bool isSpecial(const float t)
constexpr uint32_t getAuxHF() const
constexpr float charge() const
HFRecHit reconstruct(const HFPreRecHit &prehit, const HcalCalibrations &calibs, const bool flaggedBadInDB[2], bool expectSingleAnodePMT) override
constexpr float charge() const
constexpr uint32_t aux() const
std::pair< float, bool > chargeAsymmetry(float chargeThreshold) const
constexpr HcalDetId id() const
const HFPhase1PMTData * pmtInfo_
float minChargeForUndershoot() const