NPL
Neurological Programs and Libraries
npl::KDTree< K, E, T, D > Class Template Reference

#include <kdtree.h>

Public Member Functions

 KDTree ()
 Constructor. More...
 
 KDTree (KDTree &&other)
 
 KDTree (const KDTree &other)
 
 ~KDTree ()
 
void insert (const std::vector< T > &pt, const std::vector< D > &data)
 Insert a node (note that this is not dynamic, new nodes won't be found by search until build() is called) More...
 
void insert (size_t plen, const T *pt, size_t dlen, const D *data)
 Insert a node (note that this is not dynamic, new nodes won't be found by search until build() is called) More...
 
void build ()
 Create Tree, until this is called search won't find anything. More...
 
bool built ()
 
void clear ()
 Remove all elements. More...
 
const KDTreeNode< K, E, T, D > * nearest (const std::vector< T > &pt, double &dist) const
 
const KDTreeNode< K, E, T, D > * nearest (size_t len, const T *pt, double &dist) const
 
std::list< const KDTreeNode< K, E, T, D > * > withindist (const std::vector< T > &pt, double dist) const
 
std::list< const KDTreeNode< K, E, T, D > * > withindist (size_t len, const T *pt, double dist) const
 

Detailed Description

template<size_t K, size_t E, typename T, typename D>
class npl::KDTree< K, E, T, D >

Definition at line 21 of file kdtree.h.

Constructor & Destructor Documentation

template<size_t K, size_t E, typename T , typename D >
npl::KDTree< K, E, T, D >::KDTree ( )
inline

Constructor.

Definition at line 86 of file kdtree.h.

template<size_t K, size_t E, typename T , typename D >
npl::KDTree< K, E, T, D >::KDTree ( KDTree< K, E, T, D > &&  other)
inline

Definition at line 88 of file kdtree.h.

template<size_t K, size_t E, typename T , typename D >
npl::KDTree< K, E, T, D >::KDTree ( const KDTree< K, E, T, D > &  other)
inline

Definition at line 95 of file kdtree.h.

template<size_t K, size_t E, typename T , typename D >
npl::KDTree< K, E, T, D >::~KDTree ( )
inline

Definition at line 100 of file kdtree.h.

Member Function Documentation

template<size_t K, size_t E, typename T , typename D >
void npl::KDTree< K, E, T, D >::build ( )

Create Tree, until this is called search won't find anything.

template<size_t K, size_t E, typename T , typename D >
bool npl::KDTree< K, E, T, D >::built ( )
inline

Definition at line 131 of file kdtree.h.

template<size_t K, size_t E, typename T , typename D >
void npl::KDTree< K, E, T, D >::clear ( )

Remove all elements.

template<size_t K, size_t E, typename T , typename D >
void npl::KDTree< K, E, T, D >::insert ( const std::vector< T > &  pt,
const std::vector< D > &  data 
)

Insert a node (note that this is not dynamic, new nodes won't be found by search until build() is called)

Parameters
ptPoint
dataNode Data
template<size_t K, size_t E, typename T , typename D >
void npl::KDTree< K, E, T, D >::insert ( size_t  plen,
const T *  pt,
size_t  dlen,
const D *  data 
)

Insert a node (note that this is not dynamic, new nodes won't be found by search until build() is called)

Parameters
plenLength of point array
ptPoint
dlenLength of data array
dataNode Data
template<size_t K, size_t E, typename T , typename D >
const KDTreeNode<K,E,T,D>* npl::KDTree< K, E, T, D >::nearest ( const std::vector< T > &  pt,
double &  dist 
) const
template<size_t K, size_t E, typename T , typename D >
const KDTreeNode<K,E,T,D>* npl::KDTree< K, E, T, D >::nearest ( size_t  len,
const T *  pt,
double &  dist 
) const
template<size_t K, size_t E, typename T , typename D >
std::list<const KDTreeNode<K,E,T,D>*> npl::KDTree< K, E, T, D >::withindist ( const std::vector< T > &  pt,
double  dist 
) const
template<size_t K, size_t E, typename T , typename D >
std::list<const KDTreeNode<K,E,T,D>*> npl::KDTree< K, E, T, D >::withindist ( size_t  len,
const T *  pt,
double  dist 
) const

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