Algorithms to cluster objects according to specified criteria. More...
#include <vector>
#include <algorithm>
#include <utility>
#include <type_traits>
#include <cstddef>
Go to the source code of this file.
Classes | |
struct | util::details::TupleElementOp< I, KeySort > |
Namespaces | |
util | |
Namespace for general, non-LArSoft-specific utilities. | |
util::details | |
Functions | |
template<typename Coll , typename KeyOp , typename CmpOp , typename RefOp , typename KeySortOp > | |
auto | util::clusterBy (Coll const &objs, KeyOp keyFunc, CmpOp sameGroup, RefOp objRef, KeySortOp keySort) |
Performs a simple clustering. More... | |
template<typename Coll , typename KeyOp , typename CmpOp , typename KeySortOp > | |
auto | util::clusterBy (Coll const &objs, KeyOp keyFunc, CmpOp sameGroup, KeySortOp keySort) |
A version of clusterBy() storing a copy of each object as "reference". More... | |
template<std::size_t I, typename KeySort > | |
TupleElementOp< I, KeySort > | util::details::makeTupleElementOp (KeySort keySort) |
Algorithms to cluster objects according to specified criteria.
This is a header-only library.
Definition in file icarusalg/icarusalg/Utilities/SimpleClustering.h.