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(std::
make_unique<TH1D>(
"", TString(
name +
";Threshold;Rate [Hz]"), thresholdBins, thresholdMin, thresholdMax)),
19 m_rateScanHistCachedPtr(m_rateScanHist.
get()), m_thresholdPassed(0), m_behaviour(behaviour)
26 const std::vector<double>& thresholdBinEdged,
28 const double prescale,
29 const std::string&
seedName,
const double seedPrescale,
32 m_rateScanHist(nullptr), m_rateScanHistCachedPtr(nullptr), m_thresholdPassed(0), m_behaviour(behaviour)
34 if (thresholdBinEdged.size() < 2) {
35 ATH_MSG_ERROR(
"Need more than one entry in thresholdBinEdged to define histogram binning.");
38 size_t nBins = thresholdBinEdged.size() - 1;
39 m_rateScanHist = std::make_unique<TH1D>(
"", TString(
name +
";Threshold;Rate [Hz]"),
nBins, thresholdBinEdged.data());
63 return StatusCode::SUCCESS;
95 ss << std::setfill(
' ');
102 ss <<
" Threshold <= " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmin();
104 ss <<
" +- " << std::setw(11) << std::left <<
m_rateScanHistCachedPtr->GetBinError(0)/ratesDenominator <<
" Hz" << std::endl;
107 ss <<
" Threshold <= ";
114 ss <<
" Threshold > " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmax();
120 ss <<
" Threshold < " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmin();
122 ss <<
" +- " << std::setw(11) << std::left <<
m_rateScanHistCachedPtr->GetBinError(0)/ratesDenominator <<
" Hz" << std::endl;
125 ss <<
" Threshold >= ";
132 ss <<
" Threshold >= " << std::setw(11) << std::left << std::as_const(*m_rateScanHistCachedPtr).GetXaxis()->GetXmax();