The REntry is a collection of values in an ntuple corresponding to a complete row in the data set.
The entry provides a memory-managed binder for a set of values. Through shared pointers, the memory locations that are associated to values are managed.
Definition at line 51 of file REntry.hxx.
Classes | |
class | RFieldToken |
The field token identifies a (sub)field in this entry. More... | |
Public Types | |
using | ConstIterator_t = decltype(fValues)::const_iterator |
Public Member Functions | |
REntry (const REntry &other)=delete | |
REntry (REntry &&other)=default | |
~REntry ()=default | |
ConstIterator_t | begin () const |
template<typename T > | |
void | BindRawPtr (RFieldToken token, T *rawPtr) |
template<typename T > | |
void | BindRawPtr (std::string_view fieldName, T *rawPtr) |
template<typename T > | |
void | BindValue (RFieldToken token, std::shared_ptr< T > objPtr) |
template<typename T > | |
void | BindValue (std::string_view fieldName, std::shared_ptr< T > objPtr) |
void | EmplaceNewValue (RFieldToken token) |
void | EmplaceNewValue (std::string_view fieldName) |
ConstIterator_t | end () const |
std::uint64_t | GetModelId () const |
template<typename T > | |
std::shared_ptr< T > | GetPtr (RFieldToken token) const |
template<typename T > | |
std::shared_ptr< T > | GetPtr (std::string_view fieldName) const |
std::uint64_t | GetSchemaId () const |
RFieldToken | GetToken (std::string_view fieldName) const |
The ordinal of the (sub)field fieldName; can be used in other methods to address the corresponding value. | |
const std::string & | GetTypeName (RFieldToken token) const |
const std::string & | GetTypeName (std::string_view fieldName) const |
REntry & | operator= (const REntry &other)=delete |
REntry & | operator= (REntry &&other)=default |
Private Member Functions | |
REntry ()=default | |
REntry (std::uint64_t modelId, std::uint64_t schemaId) | |
template<typename T > | |
std::shared_ptr< T > | AddValue (RField< T > &field) |
While building the entry, adds a new value to the list and return the value's shared pointer. | |
void | AddValue (RFieldBase::RValue &&value) |
std::size_t | Append () |
void | EnsureMatchingModel (RFieldToken token) const |
template<typename T > | |
void | EnsureMatchingType (RFieldToken token) const |
const std::string & | FindFieldName (RFieldToken token) const |
This function has linear complexity, only use for more helpful error messages! | |
RFieldBase::RValue & | GetValue (RFieldToken token) |
Return the RValue currently bound to the provided field. | |
RFieldBase::RValue & | GetValue (std::string_view fieldName) |
void | Read (ROOT::NTupleSize_t index) |
void | UpdateValue (RFieldToken token, RFieldBase::RValue &&value) |
Update the RValue for a field in the entry. | |
void | UpdateValue (RFieldToken token, RFieldBase::RValue &value) |
Private Attributes | |
std::unordered_map< std::string, std::size_t > | fFieldName2Token |
For fast lookup of token IDs given a (sub)field name present in the entry. | |
std::vector< std::string > | fFieldTypes |
To ensure that the entry is standalone, a copy of all field types. | |
std::uint64_t | fModelId = 0 |
The entry must be linked to a specific model, identified by a model ID. | |
std::uint64_t | fSchemaId = 0 |
The entry and its tokens are also linked to a specific schema, identified by a schema ID. | |
std::vector< RFieldBase::RValue > | fValues |
Corresponds to the fields of the linked model. | |
Friends | |
class | RNTupleChainProcessor |
class | RNTupleFillContext |
class | RNTupleJoinProcessor |
class | RNTupleModel |
class | RNTupleProcessor |
class | RNTupleReader |
class | RNTupleSingleProcessor |
#include <ROOT/REntry.hxx>
using ROOT::Experimental::REntry::ConstIterator_t = decltype(fValues)::const_iterator |
Definition at line 168 of file REntry.hxx.
|
privatedefault |
|
inlineexplicitprivate |
Definition at line 90 of file REntry.hxx.
|
default |
|
default |
|
inlineprivate |
While building the entry, adds a new value to the list and return the value's shared pointer.
Definition at line 101 of file REntry.hxx.
|
inlineprivate |
Definition at line 92 of file REntry.hxx.
|
inlineprivate |
Definition at line 126 of file REntry.hxx.
|
inline |
Definition at line 247 of file REntry.hxx.
|
inline |
Definition at line 209 of file REntry.hxx.
|
inline |
Definition at line 217 of file REntry.hxx.
|
inline |
Definition at line 195 of file REntry.hxx.
|
inline |
Definition at line 203 of file REntry.hxx.
|
inline |
Definition at line 186 of file REntry.hxx.
|
inline |
Definition at line 192 of file REntry.hxx.
|
inline |
Definition at line 248 of file REntry.hxx.
|
inlineprivate |
Definition at line 135 of file REntry.hxx.
|
inlineprivate |
Definition at line 157 of file REntry.hxx.
|
inlineprivate |
This function has linear complexity, only use for more helpful error messages!
Definition at line 144 of file REntry.hxx.
|
inline |
Definition at line 244 of file REntry.hxx.
|
inline |
Definition at line 223 of file REntry.hxx.
|
inline |
Definition at line 231 of file REntry.hxx.
|
inline |
Definition at line 245 of file REntry.hxx.
|
inline |
The ordinal of the (sub)field fieldName; can be used in other methods to address the corresponding value.
Definition at line 177 of file REntry.hxx.
|
inline |
Definition at line 236 of file REntry.hxx.
|
inline |
Definition at line 242 of file REntry.hxx.
|
inlineprivate |
Return the RValue currently bound to the provided field.
Definition at line 116 of file REntry.hxx.
|
inlineprivate |
Definition at line 117 of file REntry.hxx.
|
inlineprivate |
Definition at line 119 of file REntry.hxx.
|
inlineprivate |
Update the RValue for a field in the entry.
To be used when its underlying RFieldBase changes, which typically happens when page source the field values are read from changes.
Definition at line 112 of file REntry.hxx.
|
inlineprivate |
Definition at line 113 of file REntry.hxx.
|
friend |
Definition at line 57 of file REntry.hxx.
|
friend |
Definition at line 54 of file REntry.hxx.
|
friend |
Definition at line 58 of file REntry.hxx.
|
friend |
Definition at line 52 of file REntry.hxx.
|
friend |
Definition at line 55 of file REntry.hxx.
|
friend |
Definition at line 53 of file REntry.hxx.
|
friend |
Definition at line 56 of file REntry.hxx.
|
private |
For fast lookup of token IDs given a (sub)field name present in the entry.
Definition at line 83 of file REntry.hxx.
|
private |
To ensure that the entry is standalone, a copy of all field types.
Definition at line 85 of file REntry.hxx.
|
private |
The entry must be linked to a specific model, identified by a model ID.
Definition at line 77 of file REntry.hxx.
|
private |
The entry and its tokens are also linked to a specific schema, identified by a schema ID.
Definition at line 79 of file REntry.hxx.
|
private |
Corresponds to the fields of the linked model.
Definition at line 81 of file REntry.hxx.