Go to the documentation of this file.
14 bool* isTimingReliable)
const {
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;
78 if (setAsymmetryFlag) {
79 bool passesAsymmetryCut =
true;
82 const float q = prehit.
charge();
85 passesAsymmetryCut = minAsymm <= qAsymm.first && qAsymm.first <= maxAsymm;
87 if (!passesAsymmetryCut)
constexpr float UNKNOWN_T_DLL_FAILURE
constexpr bool isSpecial(const float t)
std::pair< float, bool > chargeAsymmetry(float chargeThreshold) const
constexpr float UNKNOWN_T_UNDERSHOOT
static const unsigned OFF_STATUS
constexpr HcalDetId id() const
constexpr float charge() const
const HFPhase1PMTParams * algoConf_
float minChargeAsymm() const
constexpr float timeRising() const
static const unsigned MASK_STATUS
bool alwaysCalculatingQAsym() const
HFRecHit reconstruct(const HFPreRecHit &prehit, const HcalCalibrations &calibs, const bool flaggedBadInDB[2], bool expectSingleAnodePMT) override
constexpr unsigned getField(const uint32_t u, const unsigned mask, const unsigned offset)
unsigned determineAnodeStatus(unsigned anodeNumber, const HFQIE10Info &anode, bool *isTimingReliable) const override
constexpr float charge() const
constexpr float UNKNOWN_T_OVERSHOOT
float minChargeForUndershoot() const
const HFPhase1PMTData * pmtInfo_
constexpr uint32_t getAuxHF() const
constexpr uint32_t rawId() const
get the raw id
constexpr HcalDetId id() const
const AbsHcalFunctor & cut(const unsigned which) const
const Item & at(const HcalDetId &id) const
float minChargeForOvershoot() const
bool isDataframeOK(bool checkAllTimeSlices=false) const
constexpr void setFlagField(uint32_t value, int base, int width=1)
constexpr uint32_t aux() const
HFRecHit reconstruct(const HFPreRecHit &prehit, const HcalCalibrations &calibs, const bool flaggedBadInDB[2], bool expectSingleAnodePMT) override