Public Types | Public Member Functions | Public Attributes | Private Member Functions | Friends | List of all members
vgl_rtree_node< V, B, C > Class Template Reference

Represent a node in the rtree. More...

#include <vgl_algo_fwd.h>

Public Types

typedef vgl_rtree_node< V, B, C > node
 

Public Member Functions

 vgl_rtree_node (node *parent, V const &v)
 
 ~vgl_rtree_node ()
 
void get (B const &region, std::vector< V > &) const
 
void get (vgl_rtree_probe< V, B, C > const &region, std::vector< V > &) const
 
void get_all (std::vector< V > &vs) const
 
bool find (V const &v, node **n, int *i) const
 
bool find (B const &b, V const &v, node **n, int *i) const
 
nodeadd (V const &v)
 
void erase (unsigned int i)
 
void print () const
 

Public Attributes

bounds
 
nodeparent
 
unsigned total_vts
 
unsigned local_vts
 
vts [vgl_rtree_MAX_VERTICES]
 
unsigned total_chs
 
unsigned local_chs
 
nodechs [vgl_rtree_MAX_CHILDREN]
 

Private Member Functions

unsigned int find_index_in_parent () const
 
void compute_bounds ()
 
void update_total_vts (int diff)
 
void update_total_chs (int diff)
 
void update_vertex_count (int diff)
 
void update_child_count (int diff)
 

Friends

class vgl_rtree_iterator_base< V, B, C >
 

Detailed Description

template<class V, class B, class C>
class vgl_rtree_node< V, B, C >

Represent a node in the rtree.

Definition at line 31 of file vgl_algo_fwd.h.

Member Typedef Documentation

◆ node

template<class V , class B , class C >
typedef vgl_rtree_node<V, B, C> vgl_rtree_node< V, B, C >::node

Definition at line 45 of file vgl_rtree.h.

Constructor & Destructor Documentation

◆ vgl_rtree_node()

template<class V , class B , class C >
vgl_rtree_node< V, B, C >::vgl_rtree_node ( node parent,
V const &  v 
)

Definition at line 22 of file vgl_rtree.hxx.

◆ ~vgl_rtree_node()

template<class V , class B , class C >
vgl_rtree_node< V, B, C >::~vgl_rtree_node ( )

Definition at line 36 of file vgl_rtree.hxx.

Member Function Documentation

◆ add()

template<class V , class B , class C >
vgl_rtree_node< V, B, C > * vgl_rtree_node< V, B, C >::add ( V const &  v)

Definition at line 125 of file vgl_rtree.hxx.

◆ compute_bounds()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::compute_bounds ( )
private

Definition at line 260 of file vgl_rtree.hxx.

◆ erase()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::erase ( unsigned int  i)

Definition at line 184 of file vgl_rtree.hxx.

◆ find() [1/2]

template<class V , class B , class C >
bool vgl_rtree_node< V, B, C >::find ( V const &  v,
node **  n,
int *  i 
) const

Definition at line 77 of file vgl_rtree.hxx.

◆ find() [2/2]

template<class V , class B , class C >
bool vgl_rtree_node< V, B, C >::find ( B const &  b,
V const &  v,
node **  n,
int *  i 
) const

Definition at line 85 of file vgl_rtree.hxx.

◆ find_index_in_parent()

template<class V , class B , class C >
unsigned int vgl_rtree_node< V, B, C >::find_index_in_parent ( ) const
private

Definition at line 247 of file vgl_rtree.hxx.

◆ get() [1/2]

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::get ( B const &  region,
std::vector< V > &  vs 
) const

Definition at line 284 of file vgl_rtree.hxx.

◆ get() [2/2]

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::get ( vgl_rtree_probe< V, B, C > const &  region,
std::vector< V > &  vs 
) const

Definition at line 310 of file vgl_rtree.hxx.

◆ get_all()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::get_all ( std::vector< V > &  vs) const

Definition at line 324 of file vgl_rtree.hxx.

◆ print()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::print ( ) const

Definition at line 108 of file vgl_rtree.hxx.

◆ update_child_count()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::update_child_count ( int  diff)
private

Definition at line 65 of file vgl_rtree.hxx.

◆ update_total_chs()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::update_total_chs ( int  diff)
private

Definition at line 51 of file vgl_rtree.hxx.

◆ update_total_vts()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::update_total_vts ( int  diff)
private

Definition at line 44 of file vgl_rtree.hxx.

◆ update_vertex_count()

template<class V , class B , class C >
void vgl_rtree_node< V, B, C >::update_vertex_count ( int  diff)
private

Definition at line 58 of file vgl_rtree.hxx.

Friends And Related Function Documentation

◆ vgl_rtree_iterator_base< V, B, C >

template<class V , class B , class C >
friend class vgl_rtree_iterator_base< V, B, C >
friend

Definition at line 100 of file vgl_rtree.h.

Member Data Documentation

◆ bounds

template<class V , class B , class C >
B vgl_rtree_node< V, B, C >::bounds

Definition at line 48 of file vgl_rtree.h.

◆ chs

template<class V , class B , class C >
node* vgl_rtree_node< V, B, C >::chs[vgl_rtree_MAX_CHILDREN]

Definition at line 71 of file vgl_rtree.h.

◆ local_chs

template<class V , class B , class C >
unsigned vgl_rtree_node< V, B, C >::local_chs

Definition at line 68 of file vgl_rtree.h.

◆ local_vts

template<class V , class B , class C >
unsigned vgl_rtree_node< V, B, C >::local_vts

Definition at line 58 of file vgl_rtree.h.

◆ parent

template<class V , class B , class C >
node* vgl_rtree_node< V, B, C >::parent

Definition at line 51 of file vgl_rtree.h.

◆ total_chs

template<class V , class B , class C >
unsigned vgl_rtree_node< V, B, C >::total_chs

Definition at line 65 of file vgl_rtree.h.

◆ total_vts

template<class V , class B , class C >
unsigned vgl_rtree_node< V, B, C >::total_vts

Definition at line 55 of file vgl_rtree.h.

◆ vts

template<class V , class B , class C >
V vgl_rtree_node< V, B, C >::vts[vgl_rtree_MAX_VERTICES]

Definition at line 61 of file vgl_rtree.h.


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