14 template <
typename Traits>
15 class KnnGraphRangeQuery;
31 template <
typename Traits>
36 using Index =
typename Traits::IndexType;
41 using iterator_category = std::input_iterator_tag;
42 using difference_type = std::ptrdiff_t;
43 using value_type = Index;
44 using pointer = Index*;
45 using reference =
const Index&;
48 : m_query(
query), m_index(index)
62 m_query->advance(*
this);
70 inline reference
operator*()
const {
return const_cast<reference
>(m_index); }
74 value_type m_index{-1};
Aggregator class used to declare specialized structures using CRTP.
Input iterator to read the KnnGraphRangeQuery object.
bool operator!=(const KnnGraphRangeIterator &other) const
Inequality operand.
KnnGraphRangeIterator & operator++()
Prefix increment.
reference operator*() const
Dereference operator.
void operator++(value_type)
Postfix increment.
bool operator==(const KnnGraphRangeIterator &other) const
Equality operand.
Extension of the Query class that allows to read the result of a range neighbor search on the KnnGrap...
This Source Code Form is subject to the terms of the Mozilla Public License, v.