A helper class for piece-wise construction of an RNTupleDescriptor.
Used by RPageStorage implementations in order to construct the RNTupleDescriptor from the various header parts.
Definition at line 1744 of file RNTupleDescriptor.hxx.
Public Member Functions | |
| RResult< void > | AddAttributeSet (Experimental::RNTupleAttrSetDescriptor &&attrSetDesc) |
| RResult< void > | AddCluster (RClusterDescriptor &&clusterDesc) |
| RResult< void > | AddClusterGroup (RClusterGroupDescriptor &&clusterGroup) |
| RResult< void > | AddColumn (RColumnDescriptor &&columnDesc) |
| RResult< void > | AddExtraTypeInfo (RExtraTypeInfoDescriptor &&extraTypeInfoDesc) |
| void | AddField (const RFieldDescriptor &fieldDesc) |
| RResult< void > | AddFieldLink (ROOT::DescriptorId_t fieldId, ROOT::DescriptorId_t linkId) |
| RResult< void > | AddFieldProjection (ROOT::DescriptorId_t sourceId, ROOT::DescriptorId_t targetId) |
| void | AddToOnDiskFooterSize (std::uint64_t size) |
| The real footer size also include the page list envelopes. | |
| void | BeginHeaderExtension () |
| Mark the beginning of the header extension; any fields and columns added after a call to this function are annotated as begin part of the header extension. | |
| RResult< void > | EnsureValidDescriptor () const |
| Checks whether invariants hold: | |
| const RNTupleDescriptor & | GetDescriptor () const |
| RNTupleDescriptor | MoveDescriptor () |
| void | ReplaceExtraTypeInfo (RExtraTypeInfoDescriptor &&extraTypeInfoDesc) |
| void | SetFeature (unsigned int flag) |
Sets the flag-th bit of the feature flag to 1. | |
| void | SetNTuple (const std::string_view name, const std::string_view description) |
| void | SetOnDiskHeaderSize (std::uint64_t size) |
| void | SetOnDiskHeaderXxHash3 (std::uint64_t xxhash3) |
| void | SetSchemaFromExisting (const RNTupleDescriptor &descriptor) |
Copies the "schema" part of descriptor into the builder's descriptor. | |
| void | SetVersion (std::uint16_t versionEpoch, std::uint16_t versionMajor, std::uint16_t versionMinor, std::uint16_t versionPatch) |
| void | SetVersionForWriting () |
| void | ShiftAliasColumns (std::uint32_t offset) |
Shift column IDs of alias columns by offset | |
Private Member Functions | |
| RResult< void > | EnsureFieldExists (ROOT::DescriptorId_t fieldId) const |
Private Attributes | |
| RNTupleDescriptor | fDescriptor |
#include <ROOT/RNTupleDescriptor.hxx>
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddAttributeSet | ( | Experimental::RNTupleAttrSetDescriptor && | attrSetDesc | ) |
Definition at line 1388 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddCluster | ( | RClusterDescriptor && | clusterDesc | ) |
Definition at line 1356 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddClusterGroup | ( | RClusterGroupDescriptor && | clusterGroup | ) |
Definition at line 1311 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddColumn | ( | RColumnDescriptor && | columnDesc | ) |
Definition at line 1257 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddExtraTypeInfo | ( | RExtraTypeInfoDescriptor && | extraTypeInfoDesc | ) |
Definition at line 1366 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::AddField | ( | const RFieldDescriptor & | fieldDesc | ) |
Definition at line 1194 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddFieldLink | ( | ROOT::DescriptorId_t | fieldId, |
| ROOT::DescriptorId_t | linkId ) |
Definition at line 1205 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::AddFieldProjection | ( | ROOT::DescriptorId_t | sourceId, |
| ROOT::DescriptorId_t | targetId ) |
Definition at line 1229 of file RNTupleDescriptor.cxx.
|
inline |
The real footer size also include the page list envelopes.
Definition at line 1775 of file RNTupleDescriptor.hxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::BeginHeaderExtension | ( | ) |
Mark the beginning of the header extension; any fields and columns added after a call to this function are annotated as begin part of the header extension.
Definition at line 1327 of file RNTupleDescriptor.cxx.
|
private |
Definition at line 1017 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RNTupleDescriptorBuilder::EnsureValidDescriptor | ( | ) | const |
Checks whether invariants hold:
Definition at line 1024 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 1756 of file RNTupleDescriptor.hxx.
| ROOT::RNTupleDescriptor ROOT::Internal::RNTupleDescriptorBuilder::MoveDescriptor | ( | ) |
Definition at line 1063 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::ReplaceExtraTypeInfo | ( | RExtraTypeInfoDescriptor && | extraTypeInfoDesc | ) |
Definition at line 1377 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::SetFeature | ( | unsigned int | flag | ) |
Sets the flag-th bit of the feature flag to 1.
Note that flag itself is not a bitmask, just the bit index of the flag to enable.
Definition at line 1106 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::SetNTuple | ( | const std::string_view | name, |
| const std::string_view | description ) |
Definition at line 1099 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 1773 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 1772 of file RNTupleDescriptor.hxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::SetSchemaFromExisting | ( | const RNTupleDescriptor & | descriptor | ) |
Copies the "schema" part of descriptor into the builder's descriptor.
This resets the builder's descriptor.
Definition at line 1322 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::SetVersion | ( | std::uint16_t | versionEpoch, |
| std::uint16_t | versionMajor, | ||
| std::uint16_t | versionMinor, | ||
| std::uint16_t | versionPatch ) |
Definition at line 1079 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::SetVersionForWriting | ( | ) |
Definition at line 1091 of file RNTupleDescriptor.cxx.
| void ROOT::Internal::RNTupleDescriptorBuilder::ShiftAliasColumns | ( | std::uint32_t | offset | ) |
Shift column IDs of alias columns by offset
If the descriptor is constructed in pieces consisting of physical and alias columns (regular and projected fields), the natural column order would be
offset to the logical column IDs of all alias columns and fixes up the corresponding column IDs in the projected field descriptors. In this way, a new piece of physical and alias columns can first shift the existing alias columns by the number of new physical columns, resulting in the following orderLogical columns of piece two
Definition at line 1333 of file RNTupleDescriptor.cxx.
|
private |
Definition at line 1746 of file RNTupleDescriptor.hxx.