29 , fDefaultEntry(std::make_unique<
REntry>())
35 auto cloneRootField =
static_cast<RFieldRoot*
>(fRootField->Clone(
""));
36 cloneModel->fRootField = std::unique_ptr<RFieldRoot>(cloneRootField);
37 cloneModel->fDefaultEntry = std::unique_ptr<REntry>(cloneRootField->GenerateEntry());
44 fDefaultEntry->AddValue(field->GenerateValue());
45 fRootField->Attach(std::move(field));
52 auto collectionNTuple = std::make_shared<RCollectionNTuple>(std::move(collectionModel->fDefaultEntry));
53 auto field = std::make_unique<RFieldCollection>(fieldName, collectionNTuple, std::move(collectionModel));
54 fDefaultEntry->CaptureValue(field->CaptureValue(collectionNTuple->GetOffsetPtr()));
55 fRootField->Attach(std::move(field));
56 return collectionNTuple;
61 auto entry = std::make_unique<REntry>();
62 for (
auto&
f : *fRootField) {
63 if (
f.GetParent() != GetRootField())
65 entry->AddValue(
f.GenerateValue());
The REntry is a collection of values in an ntuple corresponding to a complete row in the data set.
The container field for an ntuple model, which itself has no physical representation.
The RNTupleModel encapulates the schema of an ntuple.
std::shared_ptr< RCollectionNTuple > MakeCollection(std::string_view fieldName, std::unique_ptr< RNTupleModel > collectionModel)
Ingests a model for a sub collection and attaches it to the current model.
std::unique_ptr< REntry > CreateEntry()
void AddField(std::unique_ptr< Detail::RFieldBase > field)
Adds a field whose type is not known at compile time. Thus there is no shared pointer returned.
basic_string_view< char > string_view