@@ -37,45 +37,41 @@ struct HistInfo {
3737template <typename EnumType, typename ArrayType>
3838constexpr o2::framework::HistType GetHistType (EnumType variable, const ArrayType& array)
3939{
40- for (const auto & entry : array) {
41- if (entry.hist == variable) {
42- return entry.histtype ;
43- }
44- }
45- return o2::framework::kUndefinedHist ;
40+ const auto it = std::find_if (array.begin (), array.end (), [=](const auto & entry) {
41+ return entry.hist == variable;
42+ });
43+
44+ return it != array.end () ? it->histtype : o2::framework::kUndefinedHist ;
4645}
4746
4847template <typename EnumType, typename ArrayType>
4948constexpr std::string_view GetHistName (EnumType variable, const ArrayType& array)
5049{
51- for (const auto & entry : array) {
52- if (entry.hist == variable) {
53- return entry.histname ;
54- }
55- }
56- return " " ; // Return an empty string or a default name if not found
50+ auto it = std::find_if (array.begin (), array.end (), [=](const auto & entry) {
51+ return entry.hist == variable;
52+ });
53+
54+ return (it != array.end ()) ? it->histname : std::string_view{};
5755}
5856
5957template <typename EnumType, typename ArrayType>
60- constexpr std::string GetHistNamev2 (EnumType variable, const ArrayType& array)
58+ std::string GetHistNamev2 (EnumType variable, const ArrayType& array)
6159{
62- for (const auto & entry : array) {
63- if (entry.hist == variable) {
64- return std::string (entry.histname );
65- }
66- }
67- return std::string (" " ); // Return an empty string or a default name if not found
60+ auto it = std::find_if (array.begin (), array.end (), [=](const auto & entry) {
61+ return entry.hist == variable;
62+ });
63+
64+ return (it != array.end ()) ? std::string (it->histname ) : std::string{};
6865}
6966
7067template <typename EnumType, typename ArrayType>
7168constexpr const char * GetHistDesc (EnumType variable, const ArrayType& array)
7269{
73- for (const auto & entry : array) {
74- if (entry.hist == variable) {
75- return entry.histdesc .data ();
76- }
77- }
78- return " " ; // Return an empty string or a default description if not found
70+ auto it = std::find_if (array.begin (), array.end (), [=](const auto & entry) {
71+ return entry.hist == variable;
72+ });
73+
74+ return it != array.end () ? it->histdesc .data () : " " ;
7975}
8076} // namespace histmanager
8177} // namespace o2::analysis::femto
0 commit comments