Buffers calls to Fill().
Once the buffer is full, on destruction of when calling Flush(), it sends the buffers off as an ideally vectorizable FillN() operation. It also serves as a multi-threaded way of filling the same histogram, reducing the locking frequency.
The HIST template can be either a RHist instance, a RHistImpl instance, or a RHistLockedFill instance.
Definition at line 82 of file RHistBufferedFill.hxx.
Public Types | |
using | CoordArray_t = typename HIST::CoordArray_t |
using | Hist_t = HIST |
using | Weight_t = typename HIST::Weight_t |
Public Types inherited from ROOT::Experimental::Internal::RHistBufferedFillBase< RHistBufferedFill< HIST, 1024 >, HIST, 1024 > | |
using | CoordArray_t = typename HIST::CoordArray_t |
using | Weight_t = typename HIST::Weight_t |
Public Member Functions | |
RHistBufferedFill (Hist_t &hist) | |
void | FillN (const std::span< const CoordArray_t > xN) |
void | FillN (const std::span< const CoordArray_t > xN, const std::span< const Weight_t > weightN) |
HIST & | GetHist () |
operator HIST & () | |
Public Member Functions inherited from ROOT::Experimental::Internal::RHistBufferedFillBase< RHistBufferedFill< HIST, 1024 >, HIST, 1024 > | |
RHistBufferedFillBase () | |
~RHistBufferedFillBase () | |
void | Fill (const CoordArray_t &x, Weight_t weight=1.) |
void | Flush () |
std::span< const CoordArray_t > | GetCoords () const |
std::span< const Weight_t > | GetWeights () const |
RHistBufferedFill< HIST, 1024 > & | toDerived () |
const RHistBufferedFill< HIST, 1024 > & | toDerived () const |
Static Public Member Functions | |
static constexpr int | GetNDim () |
Private Member Functions | |
void | FlushImpl () |
Private Attributes | |
size_t | fCursor = 0 |
HIST & | fHist |
std::array< Weight_t, SIZE > | fWBuf |
std::array< CoordArray_t, SIZE > | fXBuf |
Friends | |
class | Internal::RHistBufferedFillBase< RHistBufferedFill< HIST, SIZE >, HIST, SIZE > |
#include <ROOT/RHistBufferedFill.hxx>
using ROOT::Experimental::RHistBufferedFill< HIST, SIZE >::CoordArray_t = typename HIST::CoordArray_t |
Definition at line 85 of file RHistBufferedFill.hxx.
using ROOT::Experimental::RHistBufferedFill< HIST, SIZE >::Hist_t = HIST |
Definition at line 84 of file RHistBufferedFill.hxx.
using ROOT::Experimental::RHistBufferedFill< HIST, SIZE >::Weight_t = typename HIST::Weight_t |
Definition at line 86 of file RHistBufferedFill.hxx.
|
inline |
Definition at line 98 of file RHistBufferedFill.hxx.
|
inline |
Definition at line 105 of file RHistBufferedFill.hxx.
|
inline |
Definition at line 100 of file RHistBufferedFill.hxx.
|
inlineprivate |
Definition at line 95 of file RHistBufferedFill.hxx.
|
inline |
Definition at line 107 of file RHistBufferedFill.hxx.
|
inlinestaticconstexpr |
Definition at line 114 of file RHistBufferedFill.hxx.
|
inline |
Definition at line 112 of file RHistBufferedFill.hxx.
|
friend |
Definition at line 92 of file RHistBufferedFill.hxx.
|
private |
Definition at line 90 of file RHistBufferedFill.hxx.
|
private |
Definition at line 89 of file RHistBufferedFill.hxx.
|
private |
Definition at line 92 of file RHistBufferedFill.hxx.
|
private |
Definition at line 91 of file RHistBufferedFill.hxx.