#include <PixelHistoConverter.h>
|
| std::size_t | findBin (const Axis &axis, const float value) const |
|
| static bool | setAxis (Axis &axis, const TAxis *rootAxis) |
Definition at line 25 of file PixelHistoConverter.h.
◆ PixelHistoConverter()
| PixelHistoConverter::PixelHistoConverter |
( |
| ) |
|
|
default |
◆ ~PixelHistoConverter()
| virtual PixelHistoConverter::~PixelHistoConverter |
( |
| ) |
|
|
virtualdefault |
◆ findBin()
| std::size_t PixelHistoConverter::findBin |
( |
const Axis & | axis, |
|
|
const float | value ) const |
|
inlineprivate |
◆ getBinX()
template<typename... Args>
| std::size_t PixelHistoConverter::getBinX |
( |
Args &&... | args | ) |
const |
|
inline |
Definition at line 74 of file PixelHistoConverter.h.
74 {
76 }
std::size_t findBin(const Axis &axis, const float value) const
◆ getBinY()
template<typename... Args>
| std::size_t PixelHistoConverter::getBinY |
( |
Args &&... | args | ) |
const |
|
inline |
◆ getBinZ()
template<typename... Args>
| std::size_t PixelHistoConverter::getBinZ |
( |
Args &&... | args | ) |
const |
|
inline |
◆ getContent() [1/3]
| float PixelHistoConverter::getContent |
( |
std::size_t | x | ) |
const |
|
inline |
◆ getContent() [2/3]
| float PixelHistoConverter::getContent |
( |
std::size_t | x, |
|
|
std::size_t | y ) const |
|
inline |
◆ getContent() [3/3]
| float PixelHistoConverter::getContent |
( |
std::size_t | x, |
|
|
std::size_t | y, |
|
|
std::size_t | z ) const |
|
inline |
◆ isFirstZ()
| bool PixelHistoConverter::isFirstZ |
( |
const float | value | ) |
const |
◆ isOverflowZ()
| bool PixelHistoConverter::isOverflowZ |
( |
const float | value | ) |
const |
|
inline |
◆ setAxis()
| bool PixelHistoConverter::setAxis |
( |
Axis & | axis, |
|
|
const TAxis * | rootAxis ) |
|
staticprivate |
check if the histogram has equidistant bins
use a threshold for imperfect binning
storing as 1/width to avoid (slow) division in retrieving
Definition at line 105 of file PixelHistoConverter.cxx.
105 {
106
107 if (!rootAxis) {
108 return false;
109 }
110
111 axis.nBins = rootAxis->GetNbins();
112 axis.min = rootAxis->GetXmin();
113 axis.max = rootAxis->GetXmax();
114
115 if (
axis.nBins < 1) {
116 return false;
117 }
118
120 const float width = rootAxis->GetBinWidth(1);
121 for (std::size_t ibin = 2; ibin <=
axis.nBins; ++ibin) {
123 if (std::abs(rootAxis->GetBinWidth(ibin) -
width) > 0.01*
width) {
124 return false;
125 }
126 }
127
130
131 return true;
132}
◆ setHisto1D()
| StatusCode PixelHistoConverter::setHisto1D |
( |
const TH1 * | histo | ) |
|
fill the content
Definition at line 20 of file PixelHistoConverter.cxx.
20 {
21
22 if (!histo) {
23 return StatusCode::FAILURE;
24 }
25
27 return StatusCode::FAILURE;
28 }
29
31 const std::size_t xSize =
m_xAxis.nBins;
33
34 for (std::size_t
x = 0;
x < xSize; ++
x) {
36 }
37
38 return StatusCode::SUCCESS;
39}
static bool setAxis(Axis &axis, const TAxis *rootAxis)
◆ setHisto2D()
| StatusCode PixelHistoConverter::setHisto2D |
( |
const TH2 * | histo | ) |
|
fill the content use linearized version for performance reasons
Definition at line 41 of file PixelHistoConverter.cxx.
41 {
42 if (!histo) {
43 return StatusCode::FAILURE;
44 }
45
47 return StatusCode::FAILURE;
48 }
50 return StatusCode::FAILURE;
51 }
52
54 const std::size_t xSize =
m_xAxis.nBins;
55 const std::size_t ySize =
m_yAxis.nBins;
57
58 for (std::size_t
x = 0;
x < xSize; ++
x) {
59 for (std::size_t
y = 0;
y < ySize; ++
y) {
60 const std::size_t position =
x +
y*xSize;
62 }
63 }
64
65 return StatusCode::SUCCESS;
66}
◆ setHisto3D()
| StatusCode PixelHistoConverter::setHisto3D |
( |
const TH3 * | histo | ) |
|
fill the content use linearized version for performance reasons
Definition at line 68 of file PixelHistoConverter.cxx.
68 {
69 if (!histo) {
70 return StatusCode::FAILURE;
71 }
72
74 return StatusCode::FAILURE;
75 }
77 return StatusCode::FAILURE;
78 }
80 return StatusCode::FAILURE;
81 }
82
84 const std::size_t xSize =
m_xAxis.nBins;
85 const std::size_t ySize =
m_yAxis.nBins;
86 const std::size_t zSize =
m_zAxis.nBins;
88
89 for (std::size_t
x = 0;
x < xSize; ++
x) {
90 for (std::size_t
y = 0;
y < ySize; ++
y) {
91 for (std::size_t
z = 0;
z < zSize; ++
z) {
92 const std::size_t position =
x + xSize*(
y + (ySize *
z));
94 }
95 }
96 }
97
98 return StatusCode::SUCCESS;
99}
◆ m_content
| std::vector<float> PixelHistoConverter::m_content |
|
private |
◆ m_xAxis
| Axis PixelHistoConverter::m_xAxis {} |
|
private |
◆ m_yAxis
| Axis PixelHistoConverter::m_yAxis {} |
|
private |
◆ m_zAxis
| Axis PixelHistoConverter::m_zAxis {} |
|
private |
The documentation for this class was generated from the following files: