7 #include "GaudiKernel/ITHistSvc.h"
12 const double thresholdMin,
const double thresholdMax,
const uint32_t thresholdBins,
14 const double prescale,
15 const std::string&
seedName,
const double seedPrescale,
18 m_rateScanHist(nullptr), m_rateScanHistCachedPtr(nullptr), m_thresholdPassed(0), m_behaviour(behaviour)
20 m_rateScanHist = std::make_unique<TH1D>(
"", TString(
name +
";Threshold;Rate [Hz]"), thresholdBins, thresholdMin, thresholdMax);
28 const std::vector<double>& thresholdBinEdged,
30 const double prescale,
31 const std::string&
seedName,
const double seedPrescale,
34 m_rateScanHist(nullptr), m_rateScanHistCachedPtr(nullptr), m_thresholdPassed(0), m_behaviour(behaviour)
36 if (thresholdBinEdged.size() < 2) {
37 ATH_MSG_ERROR(
"Need more than one entry in thresholdBinEdged to define histogram binning.");
40 size_t nBins = thresholdBinEdged.size() - 1;
41 m_rateScanHist = std::make_unique<TH1D>(
"", TString(
name +
";Threshold;Rate [Hz]"),
nBins, thresholdBinEdged.data());
65 return StatusCode::SUCCESS;
97 ss << std::setfill(
' ');
104 ss <<
" Threshold <= " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmin();
106 ss <<
" +- " << std::setw(11) << std::left <<
m_rateScanHistCachedPtr->GetBinError(0)/ratesDenominator <<
" Hz" << std::endl;
109 ss <<
" Threshold <= ";
116 ss <<
" Threshold > " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmax();
122 ss <<
" Threshold < " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmin();
124 ss <<
" +- " << std::setw(11) << std::left <<
m_rateScanHistCachedPtr->GetBinError(0)/ratesDenominator <<
" Hz" << std::endl;
127 ss <<
" Threshold >= ";
134 ss <<
" Threshold >= " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmax();