diff --git a/tree/dataframe/inc/ROOT/RDF/RBookedCustomColumns.hxx b/tree/dataframe/inc/ROOT/RDF/RBookedCustomColumns.hxx index 82ccf755b9855aecec6936686a88c3e94babdbda..0988aede6778904ba0b41348910e80808a90954a 100644 --- a/tree/dataframe/inc/ROOT/RDF/RBookedCustomColumns.hxx +++ b/tree/dataframe/inc/ROOT/RDF/RBookedCustomColumns.hxx @@ -82,7 +82,7 @@ public: //////////////////////////////////////////////////////////////////////////// /// \brief Returns the list of the pointers to the defined columns - RCustomColumnBasePtrMap_t GetColumns() const { return *fCustomColumns; } + const RCustomColumnBasePtrMap_t &GetColumns() const { return *fCustomColumns; } //////////////////////////////////////////////////////////////////////////// /// \brief Check if the provided name is tracked in the names list diff --git a/tree/dataframe/inc/ROOT/RDF/RInterface.hxx b/tree/dataframe/inc/ROOT/RDF/RInterface.hxx index b9226249bf84a293f9a6203b8e71e09530b724b5..4776b824872e40ae1e76fbb1860ecc739777ce14 100644 --- a/tree/dataframe/inc/ROOT/RDF/RInterface.hxx +++ b/tree/dataframe/inc/ROOT/RDF/RInterface.hxx @@ -511,7 +511,7 @@ public: for (auto &c : validColumnNames) { const auto isCustom = std::find(customCols.begin(), customCols.end(), c) != customCols.end(); - const auto customColID = isCustom ? fCustomColumns.GetColumns()[c]->GetID() : 0; + const auto customColID = isCustom ? fCustomColumns.GetColumns().at(c)->GetID() : 0; snapCall << RDFInternal::ColumnName2ColumnTypeName(c, nsID, tree, fDataSource, isCustom, dontConvertVector, customColID) << ", "; @@ -631,7 +631,7 @@ public: const auto &customCols = fCustomColumns.GetNames(); for (auto &c : columnList) { const auto isCustom = std::find(customCols.begin(), customCols.end(), c) != customCols.end(); - const auto customColID = isCustom ? fCustomColumns.GetColumns()[c]->GetID() : 0; + const auto customColID = isCustom ? fCustomColumns.GetColumns().at(c)->GetID() : 0; cacheCall << RDFInternal::ColumnName2ColumnTypeName(c, nsID, tree, fDataSource, isCustom, /*vector2rvec=*/true, customColID) << ", "; @@ -1571,7 +1571,7 @@ public: convertVector2RVec); } else { // must convert the alias "__tdf::column_type" to a readable type - const auto colID = std::to_string(fCustomColumns.GetColumns()[std::string(column)]->GetID()); + const auto colID = std::to_string(fCustomColumns.GetColumns().at(std::string(column))->GetID()); const auto call = "ROOT::Internal::RDF::TypeID2TypeName(typeid(__tdf" + std::to_string(fLoopManager->GetID()) + "::" + std::string(column) + colID + "_type))"; const auto calcRes = RDFInternal::InterpreterCalc(call.c_str()); diff --git a/tree/dataframe/src/RDFInterfaceUtils.cxx b/tree/dataframe/src/RDFInterfaceUtils.cxx index 481bb22c73c8c3836cbf66d494a7db60f582adb9..f17ed7c9bfb8874d62dd71f9675c6a1c48287bc4 100644 --- a/tree/dataframe/src/RDFInterfaceUtils.cxx +++ b/tree/dataframe/src/RDFInterfaceUtils.cxx @@ -524,7 +524,7 @@ std::vector<std::string> ColumnTypesAsString(ColumnNames_t &colNames, ColumnName const auto &realColName = aliasMapEnd == aliasMapIt ? colName : aliasMapIt->second; // The map is a const reference, so no operator[] const auto isCustomCol = customCols.HasName(realColName); - const auto customColID = isCustomCol ? customCols.GetColumns()[realColName]->GetID() : 0; + const auto customColID = isCustomCol ? customCols.GetColumns().at(realColName)->GetID() : 0; const auto colTypeName = ColumnName2ColumnTypeName(realColName, namespaceID, tree, ds, isCustomCol, /*vector2rvec=*/true, customColID); colTypes.emplace_back(colTypeName); @@ -720,7 +720,7 @@ std::string JitBuildAction(const ColumnNames_t &bl, void *prevNode, const std::t std::vector<std::string> columnTypeNames(nBranches); for (auto i = 0u; i < nBranches; ++i) { const auto isCustomCol = customCols.HasName(bl[i]); - const auto customColID = isCustomCol ? customCols.GetColumns()[bl[i]]->GetID() : 0; + const auto customColID = isCustomCol ? customCols.GetColumns().at(bl[i])->GetID() : 0; const auto columnTypeName = ColumnName2ColumnTypeName(bl[i], namespaceID, tree, ds, isCustomCol, /*vector2rvec=*/true, customColID); if (columnTypeName.empty()) {