A container of const raw pointers, corresponding to a row in the data set.
This class can be used to write constant data products in frameworks. All other users are encouraged to use the API provided by REntry, with safe interfaces, type checks, and shared object ownership.
Definition at line 46 of file RRawPtrWriteEntry.hxx.
Public Member Functions | |
RRawPtrWriteEntry (const RRawPtrWriteEntry &other)=delete | |
RRawPtrWriteEntry (RRawPtrWriteEntry &&other)=default | |
~RRawPtrWriteEntry ()=default | |
template<typename T > | |
void | BindRawPtr (RFieldToken token, const T *rawPtr) |
template<typename T > | |
void | BindRawPtr (std::string_view fieldName, const T *rawPtr) |
std::uint64_t | GetModelId () 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. | |
RRawPtrWriteEntry & | operator= (const RRawPtrWriteEntry &other)=delete |
RRawPtrWriteEntry & | operator= (RRawPtrWriteEntry &&other)=default |
Private Member Functions | |
RRawPtrWriteEntry (std::uint64_t modelId, std::uint64_t schemaId) | |
void | AddField (ROOT::RFieldBase &field) |
std::size_t | Append () |
void | EnsureMatchingModel (RFieldToken token) const |
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< ROOT::RFieldBase * > | fFields |
Corresponds to the fields of the linked model. | |
std::uint64_t | fModelId = 0 |
The entry must be linked to a specific model, identified by a model ID. | |
std::vector< const void * > | fRawPtrs |
The raw pointers corresponding to the fields. | |
std::uint64_t | fSchemaId = 0 |
The entry and its tokens are also linked to a specific schema, identified by a schema ID. | |
Friends | |
class | ROOT::RNTupleFillContext |
class | ROOT::RNTupleModel |
#include <ROOT/RRawPtrWriteEntry.hxx>
|
inlineexplicitprivate |
Definition at line 62 of file RRawPtrWriteEntry.hxx.
|
delete |
|
default |
|
default |
|
inlineprivate |
Definition at line 64 of file RRawPtrWriteEntry.hxx.
|
inlineprivate |
Definition at line 71 of file RRawPtrWriteEntry.hxx.
|
inline |
Definition at line 106 of file RRawPtrWriteEntry.hxx.
|
inline |
Definition at line 113 of file RRawPtrWriteEntry.hxx.
|
inlineprivate |
Definition at line 80 of file RRawPtrWriteEntry.hxx.
|
inline |
Definition at line 118 of file RRawPtrWriteEntry.hxx.
|
inline |
Definition at line 119 of file RRawPtrWriteEntry.hxx.
|
inline |
The ordinal of the (sub)field fieldName; can be used in other methods to address the corresponding value.
Definition at line 96 of file RRawPtrWriteEntry.hxx.
|
delete |
|
default |
|
friend |
Definition at line 48 of file RRawPtrWriteEntry.hxx.
|
friend |
Definition at line 47 of file RRawPtrWriteEntry.hxx.
|
private |
For fast lookup of token IDs given a (sub)field name present in the entry.
Definition at line 60 of file RRawPtrWriteEntry.hxx.
|
private |
Corresponds to the fields of the linked model.
Definition at line 56 of file RRawPtrWriteEntry.hxx.
|
private |
The entry must be linked to a specific model, identified by a model ID.
Definition at line 52 of file RRawPtrWriteEntry.hxx.
|
private |
The raw pointers corresponding to the fields.
Definition at line 58 of file RRawPtrWriteEntry.hxx.
|
private |
The entry and its tokens are also linked to a specific schema, identified by a schema ID.
Definition at line 54 of file RRawPtrWriteEntry.hxx.