2 #ifndef HBHE_PULSESHAPE_FLAG_H_IKAJHGEWRHIGKHAWFIKGHAWIKGH
3 #define HBHE_PULSESHAPE_FLAG_H_IKAJHGEWRHIGKHAWFIKGHAWIKGH
33 double TS4TS5ChargeThreshold,
34 unsigned int TrianglePeakTS,
35 std::vector<double> LinearThreshold,
36 std::vector<double> LinearCut,
37 std::vector<double> RMS8MaxThreshold,
38 std::vector<double> RMS8MaxCut,
39 std::vector<double> LeftSlopeThreshold,
40 std::vector<double> LeftSlopeCut,
41 std::vector<double> RightSlopeThreshold,
42 std::vector<double> RightSlopeCut,
43 std::vector<double> RightSlopeSmallThreshold,
44 std::vector<double> RightSlopeSmallCut,
45 std::vector<double> TS4TS5UpperThreshold,
46 std::vector<double> TS4TS5UpperCut,
47 std::vector<double> TS4TS5LowerThreshold,
48 std::vector<double> TS4TS5LowerCut,
50 bool TriangleIgnoreSlow);
80 bool CheckPassFilter(
double Charge,
double Discriminant, std::vector<std::pair<double, double> > &Cuts,
double mMinimumChargeThreshold
std::vector< std::pair< double, double > > mLambdaLinearCut
double CalculateRMS8Max(const std::vector< double > &Charge)
std::vector< std::pair< double, double > > mTS4TS5LowerCut
double PerformNominalFit(const std::vector< double > &Charge)
double PerformDualNominalFit(const std::vector< double > &Charge)
~HBHEPulseShapeFlagSetter()
double PerformLinearFit(const std::vector< double > &Charge)
std::vector< std::pair< double, double > > mLeftSlopeCut
TriangleFitResult PerformTriangleFit(const std::vector< double > &Charge)
MVATrainerComputer * calib
double mTS4TS5ChargeThreshold
HBHEPulseShapeFlagSetter()
std::vector< std::pair< double, double > > mRightSlopeCut
bool CheckPassFilter(double Charge, double Discriminant, std::vector< std::pair< double, double > > &Cuts, int Side)
std::vector< double > mCharge
std::vector< std::pair< double, double > > mRightSlopeSmallCut
double DualNominalFitSingleTry(const std::vector< double > &Charge, int Offset, int Distance)
void SetPulseShapeFlags(HBHERecHit &hbhe, const HBHEDataFrame &digi, const HcalCoder &coder, const HcalCalibrations &calib)
std::vector< double > CumulativeIdealPulse
std::vector< std::pair< double, double > > mLambdaRMS8MaxCut
std::vector< std::pair< double, double > > mTS4TS5UpperCut