9#include <Eigen/Geometry>
13#include "../../Common/Containers/hashset.h"
14#include "../../Common/Containers/stack.h"
22 template <
typename _DataPo
int>
38 using VectorType =
typename DataPoint::VectorType;
46 using AabbType = Eigen::AlignedBox<Scalar, DataPoint::Dim>;
75 template <
typename _DataPo
int>
95 using VectorType =
typename DataPoint::VectorType;
103 using AabbType = Eigen::AlignedBox<Scalar, DataPoint::Dim>;
Aggregator class used to declare specialized structures using CRTP.
typename P::Scalar Scalar
Scalar type used for computation, as defined from template parameter P
This Source Code Form is subject to the terms of the Mozilla Public License, v.
The default traits type used by the kd-tree.
static IndexType * getIndexRawPtr(IndexContainer &idx)
Provides access to the raw pointer where indices are stored.
const std::vector< DataPoint > & PointContainer
Type used to store the external Point container in the KnnGraph::Buffer.
std::vector< IndexType > IndexContainer
Type used to store the index container in the KnnGraph::Buffer.
std::set< int > KnnGraphRangeSet
A Set dynamic in memory, used by KnnGraphRangeQuery.
static const IndexType * getIndexRawPtr(const IndexContainer &idx)
Provides access to the raw pointer where indices are stored.
std::stack< int > KnnGraphRangeStack
A Stack dynamic in memory, used by KnnGraphRangeQuery.
IndexContainer & IndexContainerRef
Type to be used to send the index container as function parameter.
Eigen::AlignedBox< Scalar, DataPoint::Dim > AabbType
The type used to calculate node bounding boxes.
Variant to the KnnGraph Traits type that uses pointers as internal storage instead of an STL-like con...
@ K_MAX_NN
The maximum number of neighbors that will be visited in a range neighbors query.
Eigen::AlignedBox< Scalar, DataPoint::Dim > AabbType
The type used to calculate node bounding boxes.
static const IndexType * getIndexRawPtr(const IndexContainer &idx)
Provides access to the raw pointer where indices are stored.
static IndexType * getIndexRawPtr(IndexContainer &idx)
Provides access to the raw pointer where indices are stored.
IndexType * IndexContainer
Type used to store the index container in the KnnGraph::Buffer.