Manager for a field as part of the RNTupleProcessor.
An RFieldContext contains two fields: a proto-field which is not connected to any page source but serves as the blueprint for this particular field, and a concrete field that is connected to the page source currently connected to the RNTupleProcessor for reading. When a new page source is connected, the current concrete field gets reset. A new concrete field that is connected to this new page source is subsequently created from the proto-field.
Definition at line 81 of file RNTupleProcessor.hxx.
Public Member Functions | |
RFieldContext (std::unique_ptr< RFieldBase > protoField, REntry::RFieldToken token) | |
const RFieldBase & | GetProtoField () const |
void | ResetConcreteField () |
We need to disconnect the concrete fields before swapping the page sources. | |
void | SetConcreteField () |
Private Attributes | |
std::unique_ptr< RFieldBase > | fConcreteField |
std::unique_ptr< RFieldBase > | fProtoField |
REntry::RFieldToken | fToken |
Friends | |
class | RNTupleChainProcessor |
class | RNTupleProcessor |
#include <ROOT/RNTupleProcessor.hxx>
|
inline |
Definition at line 91 of file RNTupleProcessor.hxx.
|
inline |
Definition at line 96 of file RNTupleProcessor.hxx.
|
inline |
We need to disconnect the concrete fields before swapping the page sources.
Definition at line 98 of file RNTupleProcessor.hxx.
|
inline |
Definition at line 99 of file RNTupleProcessor.hxx.
|
friend |
Definition at line 83 of file RNTupleProcessor.hxx.
|
friend |
Definition at line 82 of file RNTupleProcessor.hxx.
|
private |
Definition at line 87 of file RNTupleProcessor.hxx.
|
private |
Definition at line 86 of file RNTupleProcessor.hxx.
|
private |
Definition at line 88 of file RNTupleProcessor.hxx.