brute-force implementation of heap More...
#include <index_heap.h>
| Classes | |
| struct | Entry | 
| an entry of the heap vector  More... | |
| Public Types | |
| typedef std::vector< Entry > | Entries | 
| vector of entry, type for the storage of the tree  More... | |
| typedef IT | Index | 
| type of an index  More... | |
| typedef Eigen::Matrix< Index, Eigen::Dynamic, 1 > | IndexVector | 
| vector of indices  More... | |
| typedef VT | Value | 
| type of a value  More... | |
| typedef Eigen::Matrix< Value, Eigen::Dynamic, 1 > | ValueVector | 
| vector of values  More... | |
| Public Member Functions | |
| template<typename DI , typename DV > | |
| void | getData (const Eigen::MatrixBase< DI > &indices, const Eigen::MatrixBase< DV > &values) const | 
| get the data from the heap  More... | |
| const VT & | headValue () const | 
| get the largest value of the heap  More... | |
| IndexHeapBruteForceVector (const size_t size) | |
| Constructor.  More... | |
| void | replaceHead (const Index index, const Value value) | 
| replace the largest value of the heap  More... | |
| void | reset () | 
| reset to the empty heap  More... | |
| void | sort () | 
| sort the entries, from the smallest to the largest  More... | |
| Public Attributes | |
| Entries | data | 
| storage for the tree  More... | |
| const VT & | headValueRef | 
| reference to the largest value in the tree, to optimise access speed  More... | |
| const size_t | sizeMinusOne | 
| pre-competed size minus one, to optimise access speed  More... | |
brute-force implementation of heap
It uses a vector and linear search, which provides replacement in O(n), but with a very low constant overhead.
Definition at line 264 of file index_heap.h.
| typedef std::vector<Entry> Nabo::IndexHeapBruteForceVector< IT, VT >::Entries | 
vector of entry, type for the storage of the tree
Definition at line 283 of file index_heap.h.
| typedef IT Nabo::IndexHeapBruteForceVector< IT, VT >::Index | 
type of an index
Definition at line 267 of file index_heap.h.
| typedef Eigen::Matrix<Index, Eigen::Dynamic, 1> Nabo::IndexHeapBruteForceVector< IT, VT >::IndexVector | 
vector of indices
Definition at line 285 of file index_heap.h.
| typedef VT Nabo::IndexHeapBruteForceVector< IT, VT >::Value | 
type of a value
Definition at line 269 of file index_heap.h.
| typedef Eigen::Matrix<Value, Eigen::Dynamic, 1> Nabo::IndexHeapBruteForceVector< IT, VT >::ValueVector | 
vector of values
Definition at line 287 of file index_heap.h.
| 
 | inline | 
Constructor.
| size | number of elements in the heap | 
Definition at line 298 of file index_heap.h.
| 
 | inline | 
get the data from the heap
| indices | index vector | 
| values | value vector | 
Definition at line 346 of file index_heap.h.
| 
 | inline | 
get the largest value of the heap
Definition at line 317 of file index_heap.h.
| 
 | inline | 
replace the largest value of the heap
| index | new point index | 
| value | new distance value | 
Definition at line 322 of file index_heap.h.
| 
 | inline | 
reset to the empty heap
Definition at line 306 of file index_heap.h.
| 
 | inline | 
sort the entries, from the smallest to the largest
Definition at line 337 of file index_heap.h.
| Entries Nabo::IndexHeapBruteForceVector< IT, VT >::data | 
storage for the tree
Definition at line 290 of file index_heap.h.
| const VT& Nabo::IndexHeapBruteForceVector< IT, VT >::headValueRef | 
reference to the largest value in the tree, to optimise access speed
Definition at line 292 of file index_heap.h.
| const size_t Nabo::IndexHeapBruteForceVector< IT, VT >::sizeMinusOne | 
pre-competed size minus one, to optimise access speed
Definition at line 294 of file index_heap.h.