143 std::unordered_map<std::string, ROOT::DescriptorId_t> fields;
145 const auto& desc = rntbackend->
reader->GetDescriptor();
147 for (
const auto& field : desc.GetTopLevelFields())
149 fields.emplace(desc.GetQualifiedFieldName(field.GetId()), field.GetId());
151 std::vector<ROOT::DescriptorId_t> subFieldIds{field.GetId()};
152 while (!subFieldIds.empty())
154 const auto parentId = subFieldIds.back();
155 auto parentname=desc.GetQualifiedFieldName(parentId);
156 subFieldIds.pop_back();
158 for (
const auto& subField : desc.GetFieldIterable(parentId))
160 auto subFieldName = desc.GetQualifiedFieldName(subField.GetId());
162 fields.emplace(desc.GetQualifiedFieldName(subField.GetId()), subField.GetId());
164 subFieldIds.push_back(subField.GetId());
170 const auto& desc = rntbackend->
reader->GetDescriptor();
171 for (
const auto& [name, fieldId] : fields)
173 auto fieldName = desc.GetQualifiedFieldName(fieldId);
175 if (name.find(
"AuxDyn:") != std::string::npos ||
176 name.find(
"Aux:") != std::string::npos)
179 const auto& fieldDesc = desc.GetFieldDescriptor(fieldId);
180 const std::string typeName = desc.GetTypeNameForComparison(fieldDesc);
181 if (typeName ==
"std::int32_t" || typeName ==
"int")
184 }
else if (typeName ==
"std::uint32_t" || typeName ==
"unsigned int")
187 }
else if (typeName ==
"std::uint64_t" || typeName ==
"unsigned long" || typeName ==
"unsigned long long")
190 }
else if (typeName ==
"float")
193 }
else if (typeName ==
"std::vector<float>")
196 }
else if (typeName ==
"std::vector<char>")
199 }
else if (typeName ==
"std::vector<std::int8_t>")
202 }
else if (typeName ==
"std::vector<std::uint8_t>")
205 }
else if (typeName ==
"std::vector<std::int16_t>")
208 }
else if (typeName ==
"std::vector<std::uint16_t>")
211 }
else if (typeName ==
"std::vector<std::int32_t>")
214 }
else if (typeName ==
"std::vector<std::uint32_t>")
217 }
else if (typeName ==
"std::vector<std::int64_t>")
220 }
else if (typeName ==
"std::vector<std::uint64_t>")
223 }
else if (typeName ==
"std::vector<std::vector<float>>")
226 }
else if (typeName ==
"std::vector<std::vector<std::int32_t>>")
229 }
else if (typeName ==
"std::vector<std::vector<std::uint64_t>>")
232 }
else if (typeName ==
"std::vector<std::vector<std::vector<std::size_t>>>")
235 }
else if (typeName ==
"std::vector<std::vector<std::vector<std::uint64_t>>>")
238 }
else if (typeName ==
"std::vector<std::vector<std::vector<std::uint8_t>>>")
241 }
else if (typeName ==
"std::vector<std::vector<std::vector<unsigned char>>>")
244 }
else if (typeName ==
"std::vector<std::string>")