![]() |
OpenMS
2.4.0
|
#include <OpenMS/DATASTRUCTURES/KDTree.h>
Public Types | |
typedef _Region< __K, _Val, typename _Acc::result_type, _Acc, _Cmp > | _Region_ |
typedef _Val | value_type |
typedef value_type * | pointer |
typedef value_type const * | const_pointer |
typedef value_type & | reference |
typedef value_type const & | const_reference |
typedef _Acc::result_type | subvalue_type |
typedef _Dist::distance_type | distance_type |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
typedef _Iterator< _Val, const_reference, const_pointer > | const_iterator |
typedef const_iterator | iterator |
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
typedef std::reverse_iterator< iterator > | reverse_iterator |
Public Member Functions | |
KDTree (_Acc const &__acc=_Acc(), _Dist const &__dist=_Dist(), _Cmp const &__cmp=_Cmp(), const allocator_type &__a=allocator_type()) | |
KDTree (const KDTree &__x) | |
template<typename _InputIterator > | |
KDTree (_InputIterator __first, _InputIterator __last, _Acc const &acc=_Acc(), _Dist const &__dist=_Dist(), _Cmp const &__cmp=_Cmp(), const allocator_type &__a=allocator_type()) | |
void | efficient_replace_and_optimise (std::vector< value_type > &writable_vector) |
KDTree & | operator= (const KDTree &__x) |
~KDTree () | |
allocator_type | get_allocator () const |
size_type | size () const |
size_type | max_size () const |
bool | empty () const |
void | clear () |
_Cmp | value_comp () const |
Comparator for the values in the KDTree. More... | |
_Acc | value_acc () const |
Accessor to the value's elements. More... | |
const _Dist & | value_distance () const |
Distance calculator between 2 value's element. More... | |
_Dist & | value_distance () |
const_iterator | begin () const |
const_iterator | end () const |
const_reverse_iterator | rbegin () const |
const_reverse_iterator | rend () const |
iterator | insert (iterator, const_reference __V) |
iterator | insert (const_reference __V) |
template<class _InputIterator > | |
void | insert (_InputIterator __first, _InputIterator __last) |
void | insert (iterator __pos, size_type __n, const value_type &__x) |
template<typename _InputIterator > | |
void | insert (iterator __pos, _InputIterator __first, _InputIterator __last) |
void | erase (const_reference __V) |
void | erase_exact (const_reference __V) |
void | erase (const_iterator const &__IT) |
template<class SearchVal > | |
const_iterator | find (SearchVal const &__V) const |
template<class SearchVal > | |
const_iterator | find_exact (SearchVal const &__V) const |
size_type | count_within_range (const_reference __V, subvalue_type const __R) const |
size_type | count_within_range (_Region_ const &__REGION) const |
template<typename SearchVal , class Visitor > | |
Visitor | visit_within_range (SearchVal const &V, subvalue_type const R, Visitor visitor) const |
template<class Visitor > | |
Visitor | visit_within_range (_Region_ const ®ION, Visitor visitor) const |
template<typename SearchVal , typename _OutputIterator > | |
_OutputIterator | find_within_range (SearchVal const &val, subvalue_type const range, _OutputIterator out) const |
template<typename _OutputIterator > | |
_OutputIterator | find_within_range (_Region_ const ®ion, _OutputIterator out) const |
template<class SearchVal > | |
std::pair< const_iterator, distance_type > | find_nearest (SearchVal const &__val) const |
template<class SearchVal > | |
std::pair< const_iterator, distance_type > | find_nearest (SearchVal const &__val, distance_type __max) const |
template<class SearchVal , class _Predicate > | |
std::pair< const_iterator, distance_type > | find_nearest_if (SearchVal const &__val, distance_type __max, _Predicate __p) const |
void | optimise () |
void | optimize () |
void | check_tree () |
Protected Types | |
typedef _Alloc_base< _Val, _Alloc > | _Base |
typedef _Base::allocator_type | allocator_type |
typedef _Node_base * | _Base_ptr |
typedef _Node_base const * | _Base_const_ptr |
typedef _Node< _Val > * | _Link_type |
typedef _Node< _Val > const * | _Link_const_type |
typedef _Node_compare< _Val, _Acc, _Cmp > | _Node_compare_ |
![]() | |
typedef _Node< _Val > | _Node_ |
typedef _Node_::_Base_ptr | _Base_ptr |
typedef _Alloc | allocator_type |
Static Protected Member Functions | |
static _Link_type | _S_parent (_Base_ptr N) |
static _Link_const_type | _S_parent (_Base_const_ptr N) |
static void | _S_set_parent (_Base_ptr N, _Base_ptr p) |
static void | _S_set_left (_Base_ptr N, _Base_ptr l) |
static _Link_type | _S_left (_Base_ptr N) |
static _Link_const_type | _S_left (_Base_const_ptr N) |
static void | _S_set_right (_Base_ptr N, _Base_ptr r) |
static _Link_type | _S_right (_Base_ptr N) |
static _Link_const_type | _S_right (_Base_const_ptr N) |
static bool | _S_is_leaf (_Base_const_ptr N) |
static const_reference | _S_value (_Link_const_type N) |
static const_reference | _S_value (_Base_const_ptr N) |
static _Link_const_type | _S_minimum (_Link_const_type __X) |
static _Link_const_type | _S_maximum (_Link_const_type __X) |
Protected Attributes | |
_Link_type | _M_root |
_Node_base | _M_header |
size_type | _M_count |
_Acc | _M_acc |
_Cmp | _M_cmp |
_Dist | _M_dist |
![]() | |
allocator_type | _M_node_allocator |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
typedef _Iterator<_Val, const_reference, const_pointer> const_iterator |
typedef value_type const* const_pointer |
typedef value_type const& const_reference |
typedef std::reverse_iterator<const_iterator> const_reverse_iterator |
typedef ptrdiff_t difference_type |
typedef _Dist::distance_type distance_type |
typedef const_iterator iterator |
typedef value_type* pointer |
typedef value_type& reference |
typedef std::reverse_iterator<iterator> reverse_iterator |
typedef size_t size_type |
typedef _Acc::result_type subvalue_type |
typedef _Val value_type |
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Accessor to the value's elements.
This accessor shall not be modified, it could invalidate the tree.
|
inline |
|
inline |
Distance calculator between 2 value's element.
This functor can be modified. It's modification will only affect the behavior of the find and find_nearest functions.
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |