5#ifndef ROOT_RBinIndexRange
6#define ROOT_RBinIndexRange
15namespace Experimental {
62 return lhs.fBegin ==
rhs.fBegin &&
lhs.fEnd ==
rhs.fEnd &&
lhs.fNNormalBins ==
rhs.fNNormalBins;
113 return lhs.fIndex ==
rhs.fIndex &&
lhs.fNNormalBins ==
rhs.fNNormalBins;
136 range.fBegin = begin;
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
RBinIndex operator*() const
std::size_t fNNormalBins
The number of normal bins, after which iteration advances to RBinIndex::Overflow()
friend bool operator==(const Iterator &lhs, const Iterator &rhs)
friend bool operator!=(const Iterator &lhs, const Iterator &rhs)
const RBinIndex * operator->() const
std::ptrdiff_t difference_type
std::input_iterator_tag iterator_category
Iterator(RBinIndex index, std::size_t nNormalBins)
RBinIndex fIndex
The current bin index.
RBinIndex GetBegin() const
RBinIndex fBegin
The begin of the range (inclusive)
RBinIndex fEnd
The end of the range (exclusive)
friend bool operator!=(const RBinIndexRange &lhs, const RBinIndexRange &rhs)
friend bool operator==(const RBinIndexRange &lhs, const RBinIndexRange &rhs)
RBinIndexRange()=default
Construct an invalid bin index range.
std::size_t fNNormalBins
The number of normal bins, after which iteration advances to RBinIndex::Overflow()
A bin index with special values for underflow and overflow bins.
std::size_t GetIndex() const
Return the index for a normal bin.
static RBinIndex Overflow()
RBinIndexRange CreateBinIndexRange(RBinIndex begin, RBinIndex end, std::size_t nNormalBins)
Internal function to create RBinIndexRange.
Namespace for new ROOT classes and functions.