Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef AthenaMonitoringKernel_HistogramFiller_CumulativeHistogramFiller1D_h
6 #define AthenaMonitoringKernel_HistogramFiller_CumulativeHistogramFiller1D_h
22 if ( vars.
size() != 1) {
26 const size_t varVecSize = vars.
var[0]->size();
30 if (cutMaskValuePair.first == 0) {
return 0; }
31 if (
ATH_UNLIKELY(cutMaskValuePair.first > 1 && cutMaskValuePair.first != varVecSize)) {
33 log << MSG::ERROR <<
"CutMask does not match the size of plotted variable: "
34 << cutMaskValuePair.first <<
" " << varVecSize <<
endmsg;
36 const auto & cutMaskValue = cutMaskValuePair.second;
39 for (;
i < varVecSize;
i++) {
40 if (!cutMaskValue(
i)) {
continue; }
43 for (
unsigned j =
bin; j > 0; --j) {
virtual unsigned fill(const HistogramFiller::VariablesPack &vars) const override
Method that actually fills the ROOT object.
Filler for plain 1D histograms.
const Monitored::IMonitoredVariable * cut
pointer to cut mask variable, typically absent
the internal class used to keep parsed Filler properties
IMessageSvc * getMessageSvc(bool quiet=false)
CumulativeHistogramFiller1D(const HistogramDef &definition, std::shared_ptr< IHistogramProvider > provider)
Filler for 1D histograms filled in cummulative mode.
helper class to pass variables to fillers
Generic monitoring tool for athena components.
size_t size() const
number of variables in the pack ( not counting the weight and mask )
std::vector< const Monitored::IMonitoredVariable * > var
storage for variables, default size of 4, serves all histograming uses
std::pair< size_t, std::function< bool(size_t)> > getCutMaskFunc(const Monitored::IMonitoredVariable *mask) const