40 #include <boost/range/adaptor/reversed.hpp>
41 #include <boost/multi_index_container.hpp>
42 #include <boost/multi_index/member.hpp>
43 #include <boost/multi_index/ordered_index.hpp>
44 #include <boost/multi_index/sequenced_index.hpp>
48 namespace IdentificationDataInternal
56 std::map<ScoreTypeRef, double>
scores;
60 boost::none,
const std::map<ScoreTypeRef, double>&
scores =
61 std::map<ScoreTypeRef, double>()):
79 std::vector<std::pair<ScoreTypeRef, double>> result;
80 std::set<ScoreTypeRef> scores_done;
87 auto pos =
scores.find(score_ref);
90 result.push_back(*pos);
91 scores_done.insert(score_ref);
95 for (
const auto& pair:
scores)
97 if (!scores_done.count(pair.first))
99 result.push_back(pair);
108 typedef boost::multi_index_container<
109 AppliedProcessingStep,
110 boost::multi_index::indexed_by<
111 boost::multi_index::sequenced<>,
112 boost::multi_index::ordered_unique<
113 boost::multi_index::member<
114 AppliedProcessingStep, boost::optional<ProcessingStepRef>,