Alexandria  2.25.0
SDC-CH common library for the Euclid project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod > Class Template Reference
Inheritance diagram for KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >:
Inheritance graph
[legend]
Collaboration diagram for KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >:
Collaboration graph
[legend]

Public Member Functions

virtual ~Split ()=default
 
 Split (std::size_t dimensionality, std::size_t leaf_size, std::vector< T > data, size_t axis)
 
void findPointsWithinRadius (const T &coord, double radius, std::vector< T > &selection) const override
 
std::size_t countPointsWithinRadius (const T &coord, double radius) const override
 
- Public Member Functions inherited from KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod >
virtual ~Node ()=default
 

Private Attributes

size_t m_axis
 
double m_split_value
 
std::shared_ptr< Nodem_left_child
 
std::shared_ptr< Nodem_right_child
 

Detailed Description

template<typename T, typename DistanceMethod = EuclideanDistance<T>>
template<typename T, typename DistanceMethod>
class KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >

Definition at line 60 of file KdTree.icpp.

Constructor & Destructor Documentation

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
virtual KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::~Split ( )
virtualdefault
template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::Split ( std::size_t  dimensionality,
std::size_t  leaf_size,
std::vector< T >  data,
size_t  axis 
)
inlineexplicit

Member Function Documentation

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
std::size_t KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::countPointsWithinRadius ( const T &  coord,
double  radius 
) const
inlineoverridevirtual

Implements KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod >.

Definition at line 103 of file KdTree.icpp.

References KdTree::KdTreeTraits< T >::getCoord().

Here is the call graph for this function:

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
void KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::findPointsWithinRadius ( const T &  coord,
double  radius,
std::vector< T > &  selection 
) const
inlineoverridevirtual

Implements KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod >.

Definition at line 92 of file KdTree.icpp.

References KdTree::KdTreeTraits< T >::getCoord().

Here is the call graph for this function:

Member Data Documentation

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
size_t KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::m_axis
private

Definition at line 115 of file KdTree.icpp.

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
std::shared_ptr<Node> KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::m_left_child
private

Definition at line 118 of file KdTree.icpp.

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
std::shared_ptr<Node> KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::m_right_child
private

Definition at line 119 of file KdTree.icpp.

template<typename T , typename DistanceMethod = EuclideanDistance<T>>
template<typename T , typename DistanceMethod >
double KdTree::KdTree< T, DistanceMethod >::Split< T, DistanceMethod >::m_split_value
private

Definition at line 116 of file KdTree.icpp.


The documentation for this class was generated from the following file: