21 xAxis(
std::make_pair(
std::numeric_limits<float>::quiet_NaN(),
std::numeric_limits<float>::quiet_NaN())),
22 yAxis(
std::make_pair(
std::numeric_limits<float>::quiet_NaN(),
std::numeric_limits<float>::quiet_NaN())),
23 zAxis(
std::make_pair(
std::numeric_limits<float>::quiet_NaN(),
std::numeric_limits<float>::quiet_NaN())),
40 yAxis(
std::numeric_limits<float>::quiet_NaN(),
std::numeric_limits<float>::quiet_NaN()),
41 zAxis(
std::numeric_limits<float>::quiet_NaN(),
std::numeric_limits<float>::quiet_NaN()),
56 zAxis(
std::numeric_limits<float>::quiet_NaN(),
std::numeric_limits<float>::quiet_NaN()),
87 const std::string s(
" ");
90 s + std::to_string(
xAxis.first) + s + std::to_string(
xAxis.second) + s +
91 std::to_string(
yAxis.first) + s + std::to_string(
yAxis.second) + s +
92 std::to_string(
zAxis.first) + s + std::to_string(
zAxis.second) + s +
98 const std::string signature((
histoType.substr(0, 3)));
100 return((signature ==
"TH1")or(signature ==
"TH2")or(signature ==
"TH3")or(signature ==
"TPr") or(signature ==
"TEf"));
111 const bool sensibleXBins = (
nBinsX != 0);
112 const bool sensibleYBins = (
nBinsY != 0);
113 const bool sensibleZBins = (
nBinsZ != 0);
114 const bool sensibleTitles = not (
title.empty() or
xTitle.empty());
115 sane = (sensibleLimits and sensibleXBins and sensibleTitles);
117 sane = (sane and sensibleYBins);
120 sane = (sane and sensibleYBins and sensibleZBins);
132 const std::string s(
";");
139 if (thisfolder.empty()) {
142 const std::string delimiter(
"/");
143 std::string
result(thisfolder);
144 if ((thisfolder.substr(0, 1)) == delimiter) {
145 result = thisfolder.substr(1, thisfolder.size() - 2);
147 size_t lastChar(
result.size() - 1);
148 if ((
result.substr(lastChar, 1) != delimiter)) {
const std::string & Titles_t
std::string titleDigest() const
produce single-line representation of the titles (titles separated by the ';' delimiter)
SingleHistogramDefinition()
std::string str() const
String representation of the histogram definition.
bool isValid() const
Is the histogram definition valid.
IHistogramDefinitionSvc::axesLimits_t zAxis
bool empty() const
Is the histogram definition empty?
IHistogramDefinitionSvc::axesLimits_t xAxis
std::string stringIndex() const
add the folder path to produce the full histogram name e.g. myFolder/myHisto
IHistogramDefinitionSvc::axesLimits_t yAxis
bool validType() const
Does the histogram definition have a valid type (TH1, TH2 etc)?
const unsigned int NBins_t