Allows for iterating over the elements of a proxied collection.
RCollectionIterableOnce avoids an additional iterator copy (see TVirtualCollectionProxy::GetFunctionCopyIterator
) and thus can only be iterated once.
Definition at line 768 of file RField.hxx.
#include <ROOT/RField.hxx>
◆ RCollectionIterableOnce()
ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::RCollectionIterableOnce |
( |
void * |
collection, |
|
|
const RIteratorFuncs & |
ifuncs, |
|
|
TVirtualCollectionProxy * |
proxy, |
|
|
std::size_t |
stride = 0U |
|
) |
| |
|
inline |
Construct a RCollectionIterableOnce
that iterates over collection
.
If elements are guaranteed to be contiguous in memory (e.g. a vector), stride
can be provided for faster iteration, i.e. the address of each element is known given the base pointer.
Definition at line 823 of file RField.hxx.
◆ ~RCollectionIterableOnce()
ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::~RCollectionIterableOnce |
( |
| ) |
|
|
inline |
◆ begin()
RIterator ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::begin |
( |
| ) |
|
|
inline |
◆ end()
RIterator ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::end |
( |
| ) |
|
|
inline |
◆ GetIteratorFuncs()
◆ fBegin
void* ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::fBegin = &fBeginSmallBuf |
|
private |
◆ fBeginSmallBuf
◆ fEnd
void* ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::fEnd = &fEndSmallBuf |
|
private |
◆ fEndSmallBuf
◆ fIFuncs
const RIteratorFuncs& ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::fIFuncs |
|
private |
◆ fStride
const std::size_t ROOT::Experimental::RProxiedCollectionField::RCollectionIterableOnce::fStride |
|
private |
The documentation for this class was generated from the following files: