Base class for RHistImplBase
that abstracts out the histogram's PRECISION
.
For operations such as painting a histogram, the PRECISION
(type of the bin content) is not relevant; painting will cast the underlying bin type to double. To facilitate this, RHistImplBase
itself inherits from the RHistImplPrecisionAgnosticBase
interface.
Definition at line 72 of file RHistImpl.hxx.
Public Types | |
using | AxisIterRange_t = Hist::AxisIterRange_t< DIMENSIONS > |
Range type. | |
using | BinArray_t = std::array< int, DIMENSIONS > |
Type of the local per-axis bin indices. | |
using | CoordArray_t = Hist::CoordArray_t< DIMENSIONS > |
Type of the coordinates. | |
Public Member Functions | |
RHistImplPrecisionAgnosticBase ()=default | |
RHistImplPrecisionAgnosticBase (const RHistImplPrecisionAgnosticBase &)=default | |
RHistImplPrecisionAgnosticBase (RHistImplPrecisionAgnosticBase &&)=default | |
RHistImplPrecisionAgnosticBase (std::string_view title) | |
virtual | ~RHistImplPrecisionAgnosticBase () |
virtual const RAxisBase & | GetAxis (int iAxis) const =0 |
Get a base-class view on axis with index iAxis . | |
virtual CoordArray_t | GetBinCenter (int binidx) const =0 |
Get the center in all dimensions of the bin with index binidx . | |
virtual double | GetBinContentAsDouble (int binidx) const =0 |
The bin content, cast to double. | |
virtual CoordArray_t | GetBinFrom (int binidx) const =0 |
Get the lower edge in all dimensions of the bin with index binidx . | |
virtual int | GetBinIndex (const CoordArray_t &x) const =0 |
Given the coordinate x , determine the index of the bin. | |
virtual int | GetBinIndexAndGrow (const CoordArray_t &x) const =0 |
Given the coordinate x , determine the index of the bin, possibly growing axes for which x is out of range. | |
virtual int | GetBinIndexFromLocalBins (const BinArray_t &x) const =0 |
Given the local per-axis bins x , determine the index of the bin. | |
virtual CoordArray_t | GetBinTo (int binidx) const =0 |
Get the upper edge in all dimensions of the bin with index binidx . | |
virtual double | GetBinUncertainty (int binidx) const =0 |
Get the uncertainty of the bin with index binidx . | |
virtual BinArray_t | GetLocalBins (int binidx) const =0 |
Given the index of the bin, determine the local per-axis bins x . | |
virtual int | GetNBins () const noexcept=0 |
Number of bins of this histogram, including all overflow and underflow bins. | |
virtual int | GetNBinsNoOver () const noexcept=0 |
Number of bins of this histogram, excluding all overflow and underflow bins. | |
virtual int | GetNOverflowBins () const noexcept=0 |
Number of under- and overflow bins of this histogram, excluding all regular bins. | |
virtual AxisIterRange_t | GetRange () const =0 |
Get an AxisIterRange_t for the whole histogram, excluding under- and overflow. | |
const std::string & | GetTitle () const |
Get the histogram title. | |
virtual bool | HasBinUncertainty () const =0 |
Whether this histogram's statistics provide storage for uncertainties, or whether uncertainties are determined as poisson uncertainty of the content. | |
Static Public Member Functions | |
static constexpr int | GetNDim () |
Number of dimensions of the coordinates. | |
Private Attributes | |
std::string | fTitle |
The histogram's title. | |
#include <ROOT/RHistImpl.hxx>
using ROOT::Experimental::Detail::RHistImplPrecisionAgnosticBase< DIMENSIONS >::AxisIterRange_t = Hist::AxisIterRange_t<DIMENSIONS> |
Range type.
Definition at line 79 of file RHistImpl.hxx.
using ROOT::Experimental::Detail::RHistImplPrecisionAgnosticBase< DIMENSIONS >::BinArray_t = std::array<int, DIMENSIONS> |
Type of the local per-axis bin indices.
Definition at line 77 of file RHistImpl.hxx.
using ROOT::Experimental::Detail::RHistImplPrecisionAgnosticBase< DIMENSIONS >::CoordArray_t = Hist::CoordArray_t<DIMENSIONS> |
Type of the coordinates.
Definition at line 75 of file RHistImpl.hxx.
|
default |
|
default |
|
default |
|
inline |
Definition at line 84 of file RHistImpl.hxx.
|
inlinevirtual |
Definition at line 85 of file RHistImpl.hxx.
|
pure virtual |
Get a base-class view on axis with index iAxis
.
iAxis | - index of the axis, must be 0 <= iAxis < DIMENSION . |
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
pure virtual |
Get the center in all dimensions of the bin with index binidx
.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
pure virtual |
The bin content, cast to double.
Implemented in ROOT::Experimental::Detail::RHistImplBase< DATA >.
|
pure virtual |
Get the lower edge in all dimensions of the bin with index binidx
.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
pure virtual |
Given the coordinate x
, determine the index of the bin.
|
pure virtual |
Given the coordinate x
, determine the index of the bin, possibly growing axes for which x
is out of range.
|
pure virtual |
Given the local per-axis bins x
, determine the index of the bin.
|
pure virtual |
Get the upper edge in all dimensions of the bin with index binidx
.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
pure virtual |
Get the uncertainty of the bin with index binidx
.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
pure virtual |
Given the index of the bin, determine the local per-axis bins x
.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
pure virtualnoexcept |
Number of bins of this histogram, including all overflow and underflow bins.
Simply the product of all axes' total number of bins.
Implemented in ROOT::Experimental::Detail::RHistImplBase< DATA >.
|
pure virtualnoexcept |
Number of bins of this histogram, excluding all overflow and underflow bins.
Simply the product of all axes' number of regular bins.
Implemented in ROOT::Experimental::Detail::RHistImplBase< DATA >.
|
inlinestaticconstexpr |
Number of dimensions of the coordinates.
Definition at line 88 of file RHistImpl.hxx.
|
pure virtualnoexcept |
Number of under- and overflow bins of this histogram, excluding all regular bins.
Implemented in ROOT::Experimental::Detail::RHistImplBase< DATA >.
|
pure virtual |
Get an AxisIterRange_t
for the whole histogram, excluding under- and overflow.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
inline |
Get the histogram title.
Definition at line 100 of file RHistImpl.hxx.
|
pure virtual |
Whether this histogram's statistics provide storage for uncertainties, or whether uncertainties are determined as poisson uncertainty of the content.
Implemented in ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >.
|
private |
The histogram's title.
Definition at line 140 of file RHistImpl.hxx.