Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Types | Public Member Functions | Public Attributes
mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM > Struct Template Reference

Detailed Description

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
struct mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >

Internal structure with the KD-tree representation (mainly used to avoid copying pointers with the = operator)

Definition at line 741 of file KDTreeCapable.h.

Inheritance diagram for mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >:
Inheritance graph

Public Types

using kdtree_index_t = nanoflann::KDTreeSingleIndexAdaptor< metric_t, Derived, _DIM >
 

Public Member Functions

 TKDTreeDataHolder ()
 
 TKDTreeDataHolder (const TKDTreeDataHolder &)
 Copy constructor: It actually does NOT copy the kd-tree, a new object will be created if required! More...
 
TKDTreeDataHolderoperator= (const TKDTreeDataHolder &o) noexcept
 Copy operator: It actually does NOT copy the kd-tree, a new object will be created if required! More...
 
void clear () noexcept
 Free memory (if allocated) More...
 

Public Attributes

std::unique_ptr< kdtree_index_tindex
 nullptr or the up-to-date index More...
 
std::vector< num_t > query_point
 
size_t m_dim = _DIM
 Dimensionality. More...
 
size_t m_num_points = 0
 

Member Typedef Documentation

◆ kdtree_index_t

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
using mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::kdtree_index_t = nanoflann::KDTreeSingleIndexAdaptor<metric_t, Derived, _DIM>

Definition at line 760 of file KDTreeCapable.h.

Constructor & Destructor Documentation

◆ TKDTreeDataHolder() [1/2]

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::TKDTreeDataHolder ( )
inline

Definition at line 743 of file KDTreeCapable.h.

◆ TKDTreeDataHolder() [2/2]

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::TKDTreeDataHolder ( const TKDTreeDataHolder< _DIM > &  )
inline

Copy constructor: It actually does NOT copy the kd-tree, a new object will be created if required!

Definition at line 746 of file KDTreeCapable.h.

Member Function Documentation

◆ clear()

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
void mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::clear ( )
inlinenoexcept

◆ operator=()

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
TKDTreeDataHolder& mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::operator= ( const TKDTreeDataHolder< _DIM > &  o)
inlinenoexcept

Copy operator: It actually does NOT copy the kd-tree, a new object will be created if required!

Definition at line 751 of file KDTreeCapable.h.

Member Data Documentation

◆ index

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
std::unique_ptr<kdtree_index_t> mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::index

◆ m_dim

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
size_t mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::m_dim = _DIM

◆ m_num_points

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
size_t mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::m_num_points = 0

◆ query_point

template<class Derived, typename num_t = float, typename metric_t = nanoflann::L2_Simple_Adaptor<num_t, Derived>>
template<int _DIM = -1>
std::vector<num_t> mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::TKDTreeDataHolder< _DIM >::query_point



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at lun oct 28 00:14:14 CET 2019