11#ifndef PIXELCONDITIONSDATA_PIXELHISTOCONVRTER_H
12#define PIXELCONDITIONSDATA_PIXELHISTOCONVRTER_H
15#include "GaudiKernel/StatusCode.h"
40 inline float getContent(std::size_t
x, std::size_t
y, std::size_t
z)
const {
47 bool isFirstZ(
const float value)
const;
63 static bool setAxis(
Axis& axis,
const TAxis* rootAxis);
65 inline std::size_t
findBin(
const Axis& axis,
const float value)
const {
66 if (value <= axis.min)
return 0;
67 if (value >= axis.max)
return (axis.nBins - 1);
68 return ((value - axis.min) * axis.width);
73 template<
typename...
Args>
78 template<
typename...
Args>
83 template<
typename...
Args>
float getContent(std::size_t x) const
virtual ~PixelHistoConverter()=default
bool isFirstZ(const float value) const
StatusCode setHisto2D(const TH2 *histo)
StatusCode setHisto3D(const TH3 *histo)
std::vector< float > m_content
StatusCode setHisto1D(const TH1 *histo)
static bool setAxis(Axis &axis, const TAxis *rootAxis)
std::size_t findBin(const Axis &axis, const float value) const
std::size_t getBinY(Args &&...args) const
std::size_t getBinZ(Args &&...args) const
float getContent(std::size_t x, std::size_t y) const
float getContent(std::size_t x, std::size_t y, std::size_t z) const
bool isOverflowZ(const float value) const
std::size_t getBinX(Args &&...args) const