ROOT  6.06/09
Reference Guide
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
ROOT::THistBufferedFill< HIST, SIZE > Class Template Reference

template<class HIST, int SIZE = 1024>
class ROOT::THistBufferedFill< HIST, SIZE >

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 THist instance, a THistImpl instance, or a THistLockedFill instance.

Definition at line 74 of file THistBufferedFill.h.

Public Types

using Hist_t = HIST
 
using Coord_t = typename HIST::Coord_t
 
using Weight_t = typename HIST::Weight_t
 
- Public Types inherited from ROOT::Internal::THistBufferedFillBase< THistBufferedFill< HIST, SIZE >, HIST, SIZE >
using Coord_t = typename HIST::Coord_t
 
using Weight_t = typename HIST::Weight_t
 

Public Member Functions

 THistBufferedFill (Hist_t &hist)
 
void FillN (const std::array_view< Coord_t > xN, const std::array_view< Weight_t > weightN)
 
void FillN (const std::array_view< Coord_t > xN)
 
void Flush ()
 
HIST & GetHist ()
 
 operator HIST & ()
 
- Public Member Functions inherited from ROOT::Internal::THistBufferedFillBase< THistBufferedFill< HIST, SIZE >, HIST, SIZE >
 THistBufferedFillBase ()
 
 ~THistBufferedFillBase ()
 
THistBufferedFill< HIST, SIZE > & toDerived ()
 
const THistBufferedFill< HIST, SIZE > & toDerived () const
 
std::array_view< Coord_tGetCoords () const
 
std::array_view< Weight_tGetWeights () const
 
void Fill (const Coord_t &x, Weight_t weight=1.)
 

Static Public Member Functions

static constexpr int GetNDim ()
 

Private Attributes

HIST & fHist
 
size_t fCursor = 0
 
std::array< Coord_t, SIZEfXBuf
 
std::array< Weight_t, SIZEfWBuf
 

#include <ROOT/THistBufferedFill.h>

+ Inheritance diagram for ROOT::THistBufferedFill< HIST, SIZE >:
+ Collaboration diagram for ROOT::THistBufferedFill< HIST, SIZE >:

Member Typedef Documentation

template<class HIST , int SIZE = 1024>
using ROOT::THistBufferedFill< HIST, SIZE >::Coord_t = typename HIST::Coord_t

Definition at line 78 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
using ROOT::THistBufferedFill< HIST, SIZE >::Hist_t = HIST

Definition at line 77 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
using ROOT::THistBufferedFill< HIST, SIZE >::Weight_t = typename HIST::Weight_t

Definition at line 79 of file THistBufferedFill.h.

Constructor & Destructor Documentation

template<class HIST , int SIZE = 1024>
ROOT::THistBufferedFill< HIST, SIZE >::THistBufferedFill ( Hist_t hist)
inline

Definition at line 88 of file THistBufferedFill.h.

Member Function Documentation

template<class HIST , int SIZE = 1024>
void ROOT::THistBufferedFill< HIST, SIZE >::FillN ( const std::array_view< Coord_t xN,
const std::array_view< Weight_t weightN 
)
inline

Definition at line 90 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
void ROOT::THistBufferedFill< HIST, SIZE >::FillN ( const std::array_view< Coord_t xN)
inline

Definition at line 95 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
void ROOT::THistBufferedFill< HIST, SIZE >::Flush ( )
inline

Definition at line 100 of file THistBufferedFill.h.

Referenced by ROOT::THistBufferedFill< HIST, SIZE >::GetHist().

template<class HIST , int SIZE = 1024>
HIST& ROOT::THistBufferedFill< HIST, SIZE >::GetHist ( )
inline
template<class HIST , int SIZE = 1024>
static constexpr int ROOT::THistBufferedFill< HIST, SIZE >::GetNDim ( )
inlinestatic

Definition at line 111 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
ROOT::THistBufferedFill< HIST, SIZE >::operator HIST & ( )
inline

Definition at line 109 of file THistBufferedFill.h.

Member Data Documentation

template<class HIST , int SIZE = 1024>
size_t ROOT::THistBufferedFill< HIST, SIZE >::fCursor = 0
private

Definition at line 83 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
HIST& ROOT::THistBufferedFill< HIST, SIZE >::fHist
private

Definition at line 82 of file THistBufferedFill.h.

Referenced by ROOT::THistBufferedFill< HIST, SIZE >::GetHist().

template<class HIST , int SIZE = 1024>
std::array<Weight_t, SIZE> ROOT::THistBufferedFill< HIST, SIZE >::fWBuf
private

Definition at line 85 of file THistBufferedFill.h.

template<class HIST , int SIZE = 1024>
std::array<Coord_t, SIZE> ROOT::THistBufferedFill< HIST, SIZE >::fXBuf
private

Definition at line 84 of file THistBufferedFill.h.


The documentation for this class was generated from the following file: