|   | ROOT   6.18/05 Reference Guide | 
The container field for a tree model, which itself has no physical representation.
Definition at line 225 of file RField.hxx.
| Public Member Functions | |
| RFieldRoot () | |
| Detail::RFieldValue | CaptureValue (void *) final | 
| Creates a value from a memory location with an already constructed object.  More... | |
| RFieldBase * | Clone (std::string_view newName) | 
| void | DoGenerateColumns () final | 
| Creates the backing columns corresponsing to the field type and name.  More... | |
| REntry * | GenerateEntry () | 
| Generates managed values for the top-level sub fields.  More... | |
| Detail::RFieldValue | GenerateValue (void *) | 
| Generates a tree value in a given location of size at least GetValueSize().  More... | |
| unsigned int | GetNColumns () const final | 
| Returns the number of columns generated to store data for the field; defaults to 1.  More... | |
| size_t | GetValueSize () const final | 
| The number of bytes taken by a value of the appropriate type.  More... | |
|  Public Member Functions inherited from ROOT::Experimental::Detail::RFieldBase | |
| RFieldBase (const RFieldBase &)=delete | |
| RFieldBase (RFieldBase &&)=default | |
| RFieldBase (std::string_view name, std::string_view type, ENTupleStructure structure, bool isSimple) | |
| The constructor creates the underlying column objects and connects them to either a sink or a source.  More... | |
| virtual | ~RFieldBase () | 
| void | Append (const RFieldValue &value) | 
| Write the given value into columns. The value object has to be of the same type as the field.  More... | |
| void | Attach (std::unique_ptr< Detail::RFieldBase > child) | 
| RIterator | begin () | 
| virtual RFieldValue | CaptureValue (void *where)=0 | 
| Creates a value from a memory location with an already constructed object.  More... | |
| virtual RFieldBase * | Clone (std::string_view newName)=0 | 
| virtual void | CommitCluster () | 
| Perform housekeeping tasks for global to cluster-local index translation.  More... | |
| void | ConnectColumns (Detail::RPageStorage *pageStorage) | 
| Registeres (or re-registers) the backing columns with the physical storage.  More... | |
| virtual void | DestroyValue (const RFieldValue &value, bool dtorOnly=false) | 
| Releases the resources acquired during GenerateValue (memory and constructor) This implementation works for simple types but needs to be overwritten for complex ones.  More... | |
| RIterator | end () | 
| void | Flush () const | 
| Ensure that all received items are written from page buffers to the storage.  More... | |
| RFieldValue | GenerateValue () | 
| Generates a tree value of the field type and allocates new initialized memory according to the type.  More... | |
| virtual RFieldValue | GenerateValue (void *where)=0 | 
| Generates a tree value in a given location of size at least GetValueSize().  More... | |
| virtual RNTupleVersion | GetFieldVersion () const | 
| Indicates an evolution of the mapping scheme from C++ type to columns.  More... | |
| std::string | GetName () const | 
| virtual unsigned int | GetNColumns () const =0 | 
| Returns the number of columns generated to store data for the field; defaults to 1.  More... | |
| NTupleSize_t | GetNItems () | 
| The number of elements in the principal column. For top level fields, the number of entries.  More... | |
| const RFieldBase * | GetParent () const | 
| ENTupleStructure | GetStructure () const | 
| std::string | GetType () const | 
| virtual RNTupleVersion | GetTypeVersion () const | 
| Indicates an evolution of the C++ type itself.  More... | |
| virtual size_t | GetValueSize () const =0 | 
| The number of bytes taken by a value of the appropriate type.  More... | |
| bool | IsSimple () const | 
| RFieldBase & | operator= (const RFieldBase &)=delete | 
| RFieldBase & | operator= (RFieldBase &&)=default | 
| void | Read (NTupleSize_t index, RFieldValue *value) | 
| Populate a single value with data from the tree, which needs to be of the fitting type.  More... | |
| void | ReadV (NTupleSize_t index, NTupleSize_t count, void *dst) | 
| Type unsafe bulk read interface; dst must point to a vector of objects of the field type.  More... | |
| Additional Inherited Members | |
|  Static Public Member Functions inherited from ROOT::Experimental::Detail::RFieldBase | |
| static RFieldBase * | Create (const std::string &fieldName, const std::string &typeName) | 
| Factory method to resurrect a field from the stored on-disk type information.  More... | |
| static std::string | GetCollectionName (const std::string &parentName) | 
| Get the name for an item sub field that is part of a collection, e.g. the float field of std::vector<float>  More... | |
| static std::string | GetLeafName (const std::string &fullName) | 
| Get the tail of the field name up to the last dot.  More... | |
|  Static Public Attributes inherited from ROOT::Experimental::Detail::RFieldBase | |
| static constexpr char | kCollectionSeparator = '/' | 
| Field names convey the level of subfields; sub fields (nested collections) are separated by a dot.  More... | |
|  Protected Member Functions inherited from ROOT::Experimental::Detail::RFieldBase | |
| virtual void | DoAppend (const RFieldValue &value) | 
| Operations on values of complex types, e.g.  More... | |
| virtual void | DoGenerateColumns ()=0 | 
| Creates the backing columns corresponsing to the field type and name.  More... | |
| virtual void | DoRead (NTupleSize_t index, RFieldValue *value) | 
| virtual void | DoReadV (NTupleSize_t index, NTupleSize_t count, void *dst) | 
|  Protected Attributes inherited from ROOT::Experimental::Detail::RFieldBase | |
| std::vector< std::unique_ptr< RColumn > > | fColumns | 
| The columns are connected either to a sink or to a source (not to both); they are owned by the field.  More... | |
| RFieldBase * | fParent | 
| Sub fields point to their mother field.  More... | |
| RColumn * | fPrincipalColumn | 
| All fields have a main column. For collection fields, the main column is the index field. Points into fColumns.  More... | |
| std::vector< std::unique_ptr< RFieldBase > > | fSubFields | 
| Collections and classes own sub fields.  More... | |
#include <ROOT/RField.hxx>
| 
 | inline | 
Definition at line 227 of file RField.hxx.
| 
 | inlinefinalvirtual | 
Creates a value from a memory location with an already constructed object.
Implements ROOT::Experimental::Detail::RFieldBase.
Definition at line 234 of file RField.hxx.
| 
 | virtual | 
Implements ROOT::Experimental::Detail::RFieldBase.
Definition at line 203 of file RField.cxx.
| 
 | inlinefinalvirtual | 
Creates the backing columns corresponsing to the field type and name.
Implements ROOT::Experimental::Detail::RFieldBase.
Definition at line 230 of file RField.hxx.
| ROOT::Experimental::REntry * ROOT::Experimental::RFieldRoot::GenerateEntry | ( | ) | 
Generates managed values for the top-level sub fields.
Definition at line 214 of file RField.cxx.
| 
 | inlinevirtual | 
Generates a tree value in a given location of size at least GetValueSize().
Assumes that where has been allocated by malloc().
Implements ROOT::Experimental::Detail::RFieldBase.
Definition at line 233 of file RField.hxx.
| 
 | inlinefinalvirtual | 
Returns the number of columns generated to store data for the field; defaults to 1.
Implements ROOT::Experimental::Detail::RFieldBase.
Definition at line 231 of file RField.hxx.
| 
 | inlinefinalvirtual | 
The number of bytes taken by a value of the appropriate type.
Implements ROOT::Experimental::Detail::RFieldBase.
Definition at line 235 of file RField.hxx.