Logo ROOT  
Reference Guide
RHistImpl.hxx File Reference
#include <cassert>
#include <cctype>
#include <functional>
#include "ROOT/RSpan.hxx"
#include "ROOT/RTupleApply.hxx"
#include "ROOT/RAxis.hxx"
#include "ROOT/RHistBinIter.hxx"
#include "ROOT/RHistUtils.hxx"
#include "ROOT/RLogger.hxx"
Include dependency graph for RHistImpl.hxx:
This graph shows which files directly or indirectly include this file:

Classes

struct  ROOT::Experimental::Internal::RComputeGlobalBin< I, NDIMS, BINS, AXES >
 Recursively gets the total number of regular bins before the current dimension, when computing a global bin that is in under- or overflow in at least one dimension. More...
 
struct  ROOT::Experimental::Internal::RComputeGlobalBin<-1, NDIMS, BINS, AXES >
 
struct  ROOT::Experimental::Internal::RComputeGlobalBinRaw< I, NDIMS, BINS, AXES, BINTYPE >
 Recursively computes a zero-based global bin index, given... More...
 
struct  ROOT::Experimental::Internal::RComputeGlobalBinRaw<-1, NDIMS, BINS, AXES, BINTYPE >
 
struct  ROOT::Experimental::Internal::RComputeLocalBins< I, NDIMS, AXES >
 Recursively computes the number of regular bins before the current dimension, as well as the number of under- and overflow bins left to account for, after the current dimension. More...
 
struct  ROOT::Experimental::Internal::RComputeLocalBins< 0, NDIMS, AXES >
 
struct  ROOT::Experimental::Internal::RComputeLocalBinsInitialisation< I, NDIMS, AXES >
 Recursively compute some quantities needed for ComputeLocalBins, namely the total number of bins per hyperplane (overflow and regular) and the number of regular bins per hyperplane on the hyperplanes that have them. More...
 
struct  ROOT::Experimental::Internal::RComputeLocalBinsInitialisation< 0, NDIMS, AXES >
 
struct  ROOT::Experimental::Internal::RComputeLocalBinsRaw< I, NDIMS, BINS, AXES, BINTYPE >
 Recursively computes zero-based local bin indices, given... More...
 
struct  ROOT::Experimental::Internal::RComputeLocalBinsRaw<-1, NDIMS, BINS, AXES, BINTYPE >
 
struct  ROOT::Experimental::Internal::RFillIterRange< I, AXES >
 Recursively fills the ranges of all axes, excluding under- and overflow. More...
 
struct  ROOT::Experimental::Internal::RFillIterRange<-1, AXES >
 
struct  ROOT::Experimental::Internal::RFindLocalBins< I, NDIMS, BINS, COORD, AXES >
 Find the per-axis local bin indices associated with a certain set of coordinates. More...
 
struct  ROOT::Experimental::Internal::RFindLocalBins<-1, NDIMS, BINS, COORD, AXES >
 
struct  ROOT::Experimental::Internal::RGetNBinsCount< I, AXES >
 Recursively gets the total number of bins in whole hist, including under- and overflow. More...
 
struct  ROOT::Experimental::Internal::RGetNBinsCount< 0, AXES >
 
struct  ROOT::Experimental::Internal::RGetNBinsNoOverCount< I, AXES >
 Recursively gets the total number of bins in whole hist, excluding under- and overflow. More...
 
struct  ROOT::Experimental::Internal::RGetNBinsNoOverCount< 0, AXES >
 
struct  ROOT::Experimental::Internal::RGetNRegularBinsBefore< I, NDIMS, BINS, AXES >
 Recursively gets the number of regular bins just before the current dimension. More...
 
struct  ROOT::Experimental::Internal::RGetNRegularBinsBefore<-1, NDIMS, BINS, AXES >
 
class  ROOT::Experimental::Detail::RHistImpl< DATA, AXISCONFIG >
 
class  ROOT::Experimental::Detail::RHistImplBase< DATA >
 Interface class for RHistImpl. More...
 
class  ROOT::Experimental::Detail::RHistImplPrecisionAgnosticBase< DIMENSIONS >
 Base class for RHistImplBase that abstracts out the histogram's PRECISION. More...
 
struct  ROOT::Experimental::Internal::RLocalBinsToCoords< I, NDIMS, BINS, COORD, AXES >
 Recursively converts local axis bins from the standard kUnderflowBin/kOverflowBin for under/overflow bin indexing convention, to the corresponding bin coordinates. More...
 
struct  ROOT::Experimental::Internal::RLocalBinsToCoords<-1, NDIMS, BINS, COORD, AXES >
 
struct  ROOT::Experimental::Internal::RLocalBinsToVirtualBins< I, NDIMS, BINS, AXES >
 Recursively converts local axis bins from the standard kUnderflowBin/kOverflowBin for under/overflow bin indexing convention, to a "virtual bin" convention where the underflow bin has index 0 and the overflow bin has index N+1 where N is the axis' number of regular bins. More...
 
struct  ROOT::Experimental::Internal::RLocalBinsToVirtualBins<-1, NDIMS, BINS, AXES >
 
struct  ROOT::Experimental::Internal::RVirtualBinsToLocalBins< I, NDIMS, BINS, AXES >
 Recursively converts zero-based virtual bins where the underflow bin has index 0 and the overflow bin has index N+1 where N is the axis' number of regular bins, to the standard kUnderflowBin/kOverflowBin for under/overflow bin indexing convention. More...
 
struct  ROOT::Experimental::Internal::RVirtualBinsToLocalBins<-1, NDIMS, BINS, AXES >
 

Namespaces

namespace  ROOT
 tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tbb::task_arena without forward declaring tbb::interface7
 
namespace  ROOT::Experimental
 
namespace  ROOT::Experimental::Detail
 
namespace  ROOT::Experimental::Hist
 
namespace  ROOT::Experimental::Internal
 

Typedefs

template<int NDIMS>
using ROOT::Experimental::Hist::AxisIter_t = std::array< RAxisBase::const_iterator, NDIMS >
 Iterator over n dimensional axes - an array of n axis iterators. More...
 
template<int NDIMS>
using ROOT::Experimental::Hist::AxisIterRange_t = std::array< AxisIter_t< NDIMS >, 2 >
 Range over n dimensional axes - a pair of arrays of n axis iterators. More...
 

Enumerations

enum class  ROOT::Experimental::Hist::EOverflow { ROOT::Experimental::Hist::kNoOverflow = 0x0 , ROOT::Experimental::Hist::kUnderflow = 0x1 , ROOT::Experimental::Hist::kOverflow = 0x2 , ROOT::Experimental::Hist::kUnderOver = 0x3 }
 Kinds of under- and overflow handling. More...
 
Histogram traits

Helper traits for histogram operations.

enum class  ROOT::Experimental::Internal::EBinCoord { ROOT::Experimental::Internal::kBinFrom , ROOT::Experimental::Internal::kBinCenter , ROOT::Experimental::Internal::kBinTo }
 Specifies if the wanted result is the bin's lower edge, center or higher edge. More...
 
enum class  ROOT::Experimental::Internal::EFindStatus { ROOT::Experimental::Internal::kCanGrow , ROOT::Experimental::Internal::kValid }
 Status of FindBin(x) and FindAdjustedBin(x) More...
 

Functions

bool ROOT::Experimental::Hist::operator& (EOverflow a, EOverflow b)
 
Axis tuple operations

Template operations on axis tuple.

template<class... AXISCONFIG>
static std::array< const RAxisBase *, sizeof...(AXISCONFIG)> ROOT::Experimental::Internal::GetAxisView (const AXISCONFIG &... axes) noexcept
 
template<class... AXISCONFIG>
int ROOT::Experimental::Internal::GetNBinsFromAxes (AXISCONFIG... axisArgs)
 Get the number of bins in whole hist, including under- and overflow. More...
 
template<class... AXISCONFIG>
int ROOT::Experimental::Internal::GetNBinsNoOverFromAxes (AXISCONFIG... axisArgs)
 Get the number of bins in whole hist, excluding under- and overflow. More...
 
template<class... AXISCONFIG>
int ROOT::Experimental::Internal::GetNOverflowBinsFromAxes (AXISCONFIG... axisArgs)
 Get the number of under- and overflow bins in whole hist, excluding regular bins. More...
 

Detailed Description

Author
Axel Naumann axel@.nosp@m.cern.nosp@m..ch
Date
2015-03-23
Warning
This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback is welcome!

Definition in file RHistImpl.hxx.