Clustering
C++20 header-only: DBSCAN, HDBSCAN, k-means.
Loading...
Searching...
No Matches
range_query.h
Go to the documentation of this file.
1#pragma once
2
3#include <concepts>
4#include <cstdint>
5#include <vector>
6
9
10namespace clustering::index {
11
23template <class Q, class T>
24concept RangeIndex = std::constructible_from<Q, const NDArray<T, 2> &> &&
25 requires(const Q &q, T radius, math::Pool pool) {
26 {
27 q.query(radius, pool)
28 } -> std::same_as<std::vector<std::vector<std::int32_t>>>;
29 };
30
31} // namespace clustering::index
Contract for spatial indexes that can surface the radius-neighborhood adjacency over a borrowed point...
Definition range_query.h:24
Thin injection wrapper around a BS::light_thread_pool.
Definition thread.h:63