5 #ifndef AthenaMonitoringKernel_HistogramFiller_HistogramFillerEfficiency_h
6 #define AthenaMonitoringKernel_HistogramFiller_HistogramFillerEfficiency_h
8 #include "TEfficiency.h"
24 if (
ATH_UNLIKELY( vars[0] ==
nullptr or vars[1] ==
nullptr ) )
return 0;
32 log << MSG::ERROR <<
"CutMask does not match the size of plotted variable: "
37 TEfficiency*
efficiency = this->histogram<TEfficiency>();
38 const TH1* efftot =
efficiency->GetTotalHistogram();
40 const unsigned nMonVar = vars.
size();
41 const size_t var0Size = vars[0]->
size();
43 for (
unsigned i = 0;
i < var0Size; ++
i) {
46 detail::getFillValue<Axis::X>(efftot, vars[1],
i));
50 }
else if ( nMonVar==3 ) {
51 for (
unsigned i = 0;
i < var0Size; ++
i) {
54 detail::getFillValue<Axis::X>(efftot, vars[1],
i),
55 detail::getFillValue<Axis::Y>(efftot, vars[2],
i));
59 }
else if ( nMonVar==4 ) {
60 for (
unsigned i = 0;
i < var0Size; ++
i) {
63 detail::getFillValue<Axis::X>(efftot, vars[1],
i),
64 detail::getFillValue<Axis::Y>(efftot, vars[2],
i),
65 detail::getFillValue<Axis::Z>(efftot, vars[3],
i));