Classes with dictionaries that can be inspected by TClass. 
Definition at line 316 of file RField.hxx.
|  | 
|  | RField (RField &&other)=default | 
|  | 
|  | RField (std::string_view name) | 
|  | 
|  | ~RField () final=default | 
|  | 
| RField & | operator= (RField &&other)=default | 
|  | 
|  | RClassField (RClassField &&other)=default | 
|  | 
|  | RClassField (std::string_view fieldName, std::string_view className) | 
|  | 
|  | ~RClassField () override | 
|  | 
| void | AcceptVisitor (ROOT::Detail::RFieldVisitor &visitor) const final | 
|  | 
| size_t | GetAlignment () const final | 
|  | As a rule of thumb, the alignment is equal to the size of the type. 
 | 
|  | 
| const std::type_info * | GetPolymorphicTypeInfo () const | 
|  | For polymorphic classes (that declare or inherit at least one virtual method), return the expected dynamic type of any user object. 
 | 
|  | 
| std::uint32_t | GetTypeChecksum () const final | 
|  | Return the current TClass reported checksum of this class. Only valid if kTraitTypeChecksumis set.
 | 
|  | 
| std::uint32_t | GetTypeVersion () const final | 
|  | Indicates an evolution of the C++ type itself. 
 | 
|  | 
| size_t | GetValueSize () const final | 
|  | The number of bytes taken by a value of the appropriate type. 
 | 
|  | 
| RClassField & | operator= (RClassField &&other)=default | 
|  | 
| std::vector< RValue > | SplitValue (const RValue &value) const final | 
|  | Creates the list of direct child values given an existing value for this field. 
 | 
|  | 
|  | RFieldBase (const RFieldBase &)=delete | 
|  | 
|  | RFieldBase (RFieldBase &&)=default | 
|  | 
|  | RFieldBase (std::string_view name, std::string_view type, ROOT::ENTupleStructure structure, bool isSimple, std::size_t nRepetitions=0) | 
|  | The constructor creates the underlying column objects and connects them to either a sink or a source. 
 | 
|  | 
| virtual | ~RFieldBase ()=default | 
|  | 
| RSchemaIterator | begin () | 
|  | 
| RConstSchemaIterator | begin () const | 
|  | 
| RValue | BindValue (std::shared_ptr< void > objPtr) | 
|  | Creates a value from a memory location with an already constructed object. 
 | 
|  | 
| RConstSchemaIterator | cbegin () const | 
|  | 
| RConstSchemaIterator | cend () const | 
|  | 
| std::unique_ptr< RFieldBase > | Clone (std::string_view newName) const | 
|  | Copies the field and its subfields using a possibly new name and a new, unconnected set of columns. 
 | 
|  | 
| RBulkValues | CreateBulk () | 
|  | Creates a new, initially empty bulk. 
 | 
|  | 
| template<> | 
| std::unique_ptr< void, typename RFieldBase::RCreateObjectDeleter< void >::deleter > | CreateObject () const | 
|  | 
| template<typename T > | 
| std::unique_ptr< T, typename RCreateObjectDeleter< T >::deleter > | CreateObject () const | 
|  | Generates an object of the field type and allocates new initialized memory according to the type. 
 | 
|  | 
| template<> | 
| std::unique_ptr< void, typename ROOT::RFieldBase::RCreateObjectDeleter< void >::deleter > | CreateObject () const | 
|  | 
| RValue | CreateValue () | 
|  | Generates an object of the field's type, wraps it in a shared pointer and returns it as an RValue connected to the field. 
 | 
|  | 
| RSchemaIterator | end () | 
|  | 
| RConstSchemaIterator | end () const | 
|  | 
| RColumnRepresentations::Selection_t | GetColumnRepresentatives () const | 
|  | Returns the fColumnRepresentativepointee or, if unset (always the case for artificial fields), the field's default representative.
 | 
|  | 
| std::vector< const RFieldBase * > | GetConstSubfields () const | 
|  | 
| const std::string & | GetDescription () const | 
|  | Get the field's description. 
 | 
|  | 
| const std::string & | GetFieldName () const | 
|  | 
| virtual std::uint32_t | GetFieldVersion () const | 
|  | Indicates an evolution of the mapping scheme from C++ type to columns. 
 | 
|  | 
| std::vector< RFieldBase * > | GetMutableSubfields () | 
|  | 
| std::size_t | GetNRepetitions () const | 
|  | 
| ROOT::DescriptorId_t | GetOnDiskId () const | 
|  | 
| std::uint32_t | GetOnDiskTypeChecksum () const | 
|  | Return checksum stored in the field descriptor; only valid after a call to ConnectPageSource(), if the field stored a type checksum. 
 | 
|  | 
| std::uint32_t | GetOnDiskTypeVersion () const | 
|  | Return the C++ type version stored in the field descriptor; only valid after a call to ConnectPageSource() 
 | 
|  | 
| const RFieldBase * | GetParent () const | 
|  | 
| std::string | GetQualifiedFieldName () const | 
|  | Returns the field name and parent field names separated by dots ( grandparent.parent.child)
 | 
|  | 
| EState | GetState () const | 
|  | 
| ROOT::ENTupleStructure | GetStructure () const | 
|  | 
| std::uint32_t | GetTraits () const | 
|  | 
| const std::string & | GetTypeAlias () const | 
|  | 
| const std::string & | GetTypeName () const | 
|  | 
| bool | HasDefaultColumnRepresentative () const | 
|  | Whether or not an explicit column representative was set. 
 | 
|  | 
| bool | HasReadCallbacks () const | 
|  | 
| bool | IsArtificial () const | 
|  | 
| bool | IsSimple () const | 
|  | 
| RFieldBase & | operator= (const RFieldBase &)=delete | 
|  | 
| RFieldBase & | operator= (RFieldBase &&)=default | 
|  | 
| void | SetColumnRepresentatives (const RColumnRepresentations::Selection_t &representatives) | 
|  | Fixes a column representative. 
 | 
|  | 
| void | SetDescription (std::string_view description) | 
|  | 
| void | SetOnDiskId (ROOT::DescriptorId_t id) | 
|  | 
|  | 
| enum | { kTraitTriviallyConstructible = 0x01
, kTraitTriviallyDestructible = 0x02
, kTraitMappable = 0x04
, kTraitTypeChecksum = 0x08
,
 kTraitInvalidField = 0x10
, kTraitEmulatedField = 0x20
, kTraitTrivialType = kTraitTriviallyConstructible | kTraitTriviallyDestructible
 }
 | 
|  | 
| using | ColumnRepresentation_t = std::vector<ROOT::ENTupleColumnType> | 
|  | 
| enum class | EState { kUnconnected
, kConnectedToSink
, kConnectedToSource
 } | 
|  | During its lifetime, a field undergoes the following possible state transitions:  More... 
 | 
|  | 
| using | RConstSchemaIterator = RSchemaIteratorTemplate<true> | 
|  | 
| using | RSchemaIterator = RSchemaIteratorTemplate<false> | 
|  | 
| static constexpr std::uint32_t | kInvalidTypeVersion = -1U | 
|  | 
| enum | { kDiffFieldVersion = 0x01
, kDiffTypeVersion = 0x02
, kDiffStructure = 0x04
, kDiffTypeName = 0x08
,
 kDiffNRepetitions = 0x10
 }
 | 
|  | Bits used in CompareOnDisk()  More... 
 | 
|  | 
| std::size_t | AppendImpl (const void *from) final | 
|  | Operations on values of complex types, e.g. 
 | 
|  | 
| std::unique_ptr< RFieldBase > | BeforeConnectPageSource (ROOT::Internal::RPageSource &pageSource) final | 
|  | Called by ConnectPageSource() before connecting; derived classes may override this as appropriate, e.g. 
 | 
|  | 
| std::unique_ptr< RFieldBase > | CloneImpl (std::string_view newName) const final | 
|  | Called by Clone(), which additionally copies the on-disk ID. 
 | 
|  | 
| void | ConstructValue (void *where) const final | 
|  | Constructs value in a given location of size at least GetValueSize(). Called by the base class' CreateValue(). 
 | 
|  | 
| std::unique_ptr< RDeleter > | GetDeleter () const final | 
|  | 
| void | ReadGlobalImpl (ROOT::NTupleSize_t globalIndex, void *to) final | 
|  | 
| void | ReadInClusterImpl (RNTupleLocalIndex localIndex, void *to) final | 
|  | 
| void | ReconcileOnDiskField (const RNTupleDescriptor &desc) final | 
|  | For non-artificial fields, check compatibility of the in-memory field and the on-disk field. 
 | 
|  | 
| size_t | AddReadCallback (ReadCallback_t func) | 
|  | Set a user-defined function to be called after reading a value, giving a chance to inspect and/or modify the value object. 
 | 
|  | 
| std::size_t | Append (const void *from) | 
|  | Write the given value into columns. 
 | 
|  | 
| void | Attach (std::unique_ptr< RFieldBase > child) | 
|  | Add a new subfield to the list of nested fields. 
 | 
|  | 
| void | AutoAdjustColumnTypes (const ROOT::RNTupleWriteOptions &options) | 
|  | When connecting a field to a page sink, the field's default column representation is subject to adjustment according to the write options. 
 | 
|  | 
| virtual void | CommitClusterImpl () | 
|  | 
| std::uint32_t | CompareOnDiskField (const RFieldDescriptor &fieldDesc, std::uint32_t ignoreBits) const | 
|  | Returns a combination of kDiff... flags, indicating peroperties that are different between the field at hand and the given on-disk field. 
 | 
|  | 
| void * | CreateObjectRawPtr () const | 
|  | Factory method for the field's type. The caller owns the returned pointer. 
 | 
|  | 
| const ColumnRepresentation_t & | EnsureCompatibleColumnTypes (const ROOT::RNTupleDescriptor &desc, std::uint16_t representationIndex) const | 
|  | Returns the on-disk column types found in the provided descriptor for fOnDiskIdand the given representation index.
 | 
|  | 
| RResult< void > | EnsureMatchingOnDiskField (const RNTupleDescriptor &desc, std::uint32_t ignoreBits=0) const | 
|  | Compares the field to the corresponding on-disk field information in the provided descriptor. 
 | 
|  | 
| RResult< void > | EnsureMatchingTypePrefix (const RNTupleDescriptor &desc, const std::vector< std::string > &prefixes) const | 
|  | Many fields accept a range of type prefixes for schema evolution, e.g. 
 | 
|  | 
| virtual void | GenerateColumns () | 
|  | Implementations in derived classes should create the backing columns corresponding to the field type for writing. 
 | 
|  | 
| virtual void | GenerateColumns (const ROOT::RNTupleDescriptor &) | 
|  | Implementations in derived classes should create the backing columns corresponding to the field type for reading. 
 | 
|  | 
| template<typename... ColumnCppTs> | 
| void | GenerateColumnsImpl () | 
|  | For writing, use the currently set column representative. 
 | 
|  | 
| template<std::uint32_t ColumnIndexT, typename HeadT , typename... TailTs> | 
| void | GenerateColumnsImpl (const ColumnRepresentation_t &representation, std::uint16_t representationIndex) | 
|  | Helpers for generating columns. 
 | 
|  | 
| template<typename... ColumnCppTs> | 
| void | GenerateColumnsImpl (const ROOT::RNTupleDescriptor &desc) | 
|  | For reading, use the on-disk column list. 
 | 
|  | 
| virtual const RColumnRepresentations & | GetColumnRepresentations () const | 
|  | Implementations in derived classes should return a static RColumnRepresentations object. 
 | 
|  | 
| virtual ROOT::RExtraTypeInfoDescriptor | GetExtraTypeInfo () const | 
|  | 
| virtual bool | HasExtraTypeInfo () const | 
|  | 
| void | Read (RNTupleLocalIndex localIndex, void *to) | 
|  | Populate a single value with data from the field. 
 | 
|  | 
| void | Read (ROOT::NTupleSize_t globalIndex, void *to) | 
|  | Populate a single value with data from the field. 
 | 
|  | 
| std::size_t | ReadBulk (const RBulkSpec &bulkSpec) | 
|  | Returns the number of newly available values, that is the number of bools in bulkSpec.fMaskAvailthat flipped from false to true.
 | 
|  | 
| virtual std::size_t | ReadBulkImpl (const RBulkSpec &bulkSpec) | 
|  | General implementation of bulk read. 
 | 
|  | 
| void | RemoveReadCallback (size_t idx) | 
|  | 
| static std::size_t | CallAppendOn (RFieldBase &other, const void *from) | 
|  | Allow derived classes to call Append() and Read() on other (sub)fields. 
 | 
|  | 
| static void | CallConstructValueOn (const RFieldBase &other, void *where) | 
|  | Allow derived classes to call ConstructValue(void *) and GetDeleter() on other (sub)fields. 
 | 
|  | 
| static void * | CallCreateObjectRawPtrOn (RFieldBase &other) | 
|  | 
| static void | CallReadOn (RFieldBase &other, RNTupleLocalIndex localIndex, void *to) | 
|  | 
| static void | CallReadOn (RFieldBase &other, ROOT::NTupleSize_t globalIndex, void *to) | 
|  | 
| static void | CallSetArtificialOn (RFieldBase &other) | 
|  | Allow parents to mark their childs as artificial fields (used in class and record fields) 
 | 
|  | 
| static RResult< std::unique_ptr< RFieldBase > > | Create (const std::string &fieldName, const std::string &typeName, const ROOT::RCreateFieldOptions &options, const ROOT::RNTupleDescriptor *desc, ROOT::DescriptorId_t fieldId) | 
|  | Factory method to resurrect a field from the stored on-disk type information. 
 | 
|  | 
| static std::unique_ptr< RDeleter > | GetDeleterOf (const RFieldBase &other) | 
|  | 
| static ROOT::Internal::RColumn * | GetPrincipalColumnOf (const RFieldBase &other) | 
|  | Fields may need direct access to the principal column of their subfields, e.g. in RRVecField::ReadBulk() 
 | 
|  | 
| static void | SetTypeAliasOf (RFieldBase &other, const std::string &alias) | 
|  | Allow class fields to adjust the type alias of their members. 
 | 
|  | 
| ROOT::Internal::RColumn * | fAuxiliaryColumn = nullptr | 
|  | Some fields have a second column in its column representation. 
 | 
|  | 
| std::vector< std::unique_ptr< ROOT::Internal::RColumn > > | fAvailableColumns | 
|  | The columns are connected either to a sink or to a source (not to both); they are owned by the field. 
 | 
|  | 
| std::vector< std::reference_wrapper< const ColumnRepresentation_t > > | fColumnRepresentatives | 
|  | Pointers into the static vector returned by RColumnRepresentations::GetSerializationTypes() when SetColumnRepresentatives() is called. 
 | 
|  | 
| std::uint32_t | fOnDiskTypeChecksum = 0 | 
|  | TClass checksum cached from the descriptor after a call to ConnectPageSource(). 
 | 
|  | 
| std::uint32_t | fOnDiskTypeVersion = kInvalidTypeVersion | 
|  | C++ type version cached from the descriptor after a call to ConnectPageSource() 
 | 
|  | 
| RFieldBase * | fParent | 
|  | Subfields point to their mother field. 
 | 
|  | 
| ROOT::Internal::RColumn * | fPrincipalColumn = nullptr | 
|  | All fields that have columns have a distinct main column. 
 | 
|  | 
| std::vector< ReadCallback_t > | fReadCallbacks | 
|  | List of functions to be called after reading a value. 
 | 
|  | 
| std::vector< std::unique_ptr< RFieldBase > > | fSubfields | 
|  | Collections and classes own subfields. 
 | 
|  | 
| std::uint32_t | fTraits = 0 | 
|  | Properties of the type that allow for optimizations of collections of that type. 
 | 
|  | 
| std::string | fTypeAlias | 
|  | A typedef or using name that was used when creating the field. 
 | 
|  |