16#ifndef ROOT7_RHistBufferedFill
17#define ROOT7_RHistBufferedFill
24namespace Experimental {
27template <
class DERIVED,
class HIST,
int SIZE>
35 std::array<CoordArray_t, SIZE>
fXBuf;
36 std::array<Weight_t, SIZE>
fWBuf;
42 DERIVED &
toDerived() {
return *
static_cast<DERIVED *
>(
this); }
43 const DERIVED &
toDerived()
const {
return *
static_cast<const DERIVED *
>(
this); }
83template <
class HIST,
int SIZE = 1024>
99 void FillN(
const std::span<const CoordArray_t> xN,
const std::span<const Weight_t> weightN)
101 fHist.FillN(xN, weightN);
104 void FillN(
const std::span<const CoordArray_t> xN) {
fHist.FillN(xN); }
113 static constexpr int GetNDim() {
return HIST::GetNDim(); }
std::span< const Weight_t > GetWeights() const
void Fill(const CoordArray_t &x, Weight_t weight=1.)
typename HIST::CoordArray_t CoordArray_t
std::array< Weight_t, SIZE > fWBuf
std::span< const CoordArray_t > GetCoords() const
std::array< CoordArray_t, SIZE > fXBuf
typename HIST::Weight_t Weight_t
const DERIVED & toDerived() const
RHistBufferedFill(Hist_t &hist)
void FillN(const std::span< const CoordArray_t > xN)
static constexpr int GetNDim()
typename HIST::CoordArray_t CoordArray_t
typename HIST::Weight_t Weight_t
void FillN(const std::span< const CoordArray_t > xN, const std::span< const Weight_t > weightN)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...