The Gaudi Framework  v36r10 (fc05264c)
Gaudi::Accumulators::Axis< Arithmetic > Struct Template Reference

Definition of an Histogram Axis. More...

#include </builds/gaudi/Gaudi/GaudiKernel/include/Gaudi/Accumulators/Histogram.h>

Collaboration diagram for Gaudi::Accumulators::Axis< Arithmetic >:

Public Member Functions

 Axis (unsigned int _nBins, Arithmetic _minValue, Arithmetic _maxValue, std::string _title={}, std::vector< std::string > _labels={})
 
 Axis (Gaudi::Histo1DDef const &def)
 
unsigned int index (Arithmetic value) const
 returns the bin number for a given value, ranging from 0 (underflow) to nBins+1 (overflow) More...
 

Public Attributes

unsigned int nBins
 number of bins for this Axis More...
 
Arithmetic minValue
 min and max values on this axis More...
 
Arithmetic maxValue
 
std::string title
 title of this axis More...
 
std::vector< std::stringlabels
 labels for the bins More...
 
Arithmetic ratio
 precomputed ratio to convert a value into bin number equal to nBins/(maxValue-minValue) More...
 

Detailed Description

template<typename Arithmetic>
struct Gaudi::Accumulators::Axis< Arithmetic >

Definition of an Histogram Axis.

Definition at line 154 of file Histogram.h.

Constructor & Destructor Documentation

◆ Axis() [1/2]

template<typename Arithmetic >
Gaudi::Accumulators::Axis< Arithmetic >::Axis ( unsigned int  _nBins,
Arithmetic  _minValue,
Arithmetic  _maxValue,
std::string  _title = {},
std::vector< std::string _labels = {} 
)
inline

Definition at line 155 of file Histogram.h.

155  {},
156  std::vector<std::string> _labels = {} )
157  : nBins( _nBins )
158  , minValue( _minValue )
159  , maxValue( _maxValue )
160  , title( std::move( _title ) )
161  , labels( std::move( _labels ) )
162  , ratio( _nBins / ( _maxValue - _minValue ) ) {
164  for ( const auto& s : labels ) details::requireValidTitle( s );
165  };

◆ Axis() [2/2]

template<typename Arithmetic >
Gaudi::Accumulators::Axis< Arithmetic >::Axis ( Gaudi::Histo1DDef const &  def)
inlineexplicit

Definition at line 166 of file Histogram.h.

167  : Axis( (unsigned int)def.bins(), def.lowEdge(), def.highEdge(), def.title() ){};

Member Function Documentation

◆ index()

template<typename Arithmetic >
unsigned int Gaudi::Accumulators::Axis< Arithmetic >::index ( Arithmetic  value) const
inline

returns the bin number for a given value, ranging from 0 (underflow) to nBins+1 (overflow)

Definition at line 183 of file Histogram.h.

183  {
184  int idx = std::floor( ( value - minValue ) * ratio ) + 1;
185  return idx < 0 ? 0 : ( (unsigned int)idx > nBins ? nBins + 1 : (unsigned int)idx );
186  }

Member Data Documentation

◆ labels

template<typename Arithmetic >
std::vector<std::string> Gaudi::Accumulators::Axis< Arithmetic >::labels

labels for the bins

Definition at line 175 of file Histogram.h.

◆ maxValue

template<typename Arithmetic >
Arithmetic Gaudi::Accumulators::Axis< Arithmetic >::maxValue

Definition at line 171 of file Histogram.h.

◆ minValue

template<typename Arithmetic >
Arithmetic Gaudi::Accumulators::Axis< Arithmetic >::minValue

min and max values on this axis

Definition at line 171 of file Histogram.h.

◆ nBins

template<typename Arithmetic >
unsigned int Gaudi::Accumulators::Axis< Arithmetic >::nBins

number of bins for this Axis

Definition at line 169 of file Histogram.h.

◆ ratio

template<typename Arithmetic >
Arithmetic Gaudi::Accumulators::Axis< Arithmetic >::ratio

precomputed ratio to convert a value into bin number equal to nBins/(maxValue-minValue)

Definition at line 180 of file Histogram.h.

◆ title

template<typename Arithmetic >
std::string Gaudi::Accumulators::Axis< Arithmetic >::title

title of this axis

Definition at line 173 of file Histogram.h.


The documentation for this struct was generated from the following file:
Gaudi::Accumulators::Axis::minValue
Arithmetic minValue
min and max values on this axis
Definition: Histogram.h:171
std::floor
T floor(T... args)
Gaudi::Accumulators::details::requireValidTitle
void requireValidTitle(std::string_view sv)
Definition: Histogram.h:46
std::move
T move(T... args)
Gaudi::Accumulators::Axis::maxValue
Arithmetic maxValue
Definition: Histogram.h:171
Gaudi::Accumulators::Axis::nBins
unsigned int nBins
number of bins for this Axis
Definition: Histogram.h:167
gaudirun.s
string s
Definition: gaudirun.py:346
std::vector< std::string >
Gaudi::Accumulators::Axis::Axis
Axis(unsigned int _nBins, Arithmetic _minValue, Arithmetic _maxValue, std::string _title={}, std::vector< std::string > _labels={})
Definition: Histogram.h:155
Gaudi::Accumulators::Axis::ratio
Arithmetic ratio
precomputed ratio to convert a value into bin number equal to nBins/(maxValue-minValue)
Definition: Histogram.h:180
Gaudi::Accumulators::Axis::title
std::string title
title of this axis
Definition: Histogram.h:173
Gaudi::Accumulators::Axis::labels
std::vector< std::string > labels
labels for the bins
Definition: Histogram.h:175