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

Represent a node in the rtree. More...

#include <vgl_rtree.h>

List of all members.

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, vcl_vector< V > &) const
void get (vgl_rtree_probe< V, B, C > const &region, vcl_vector< V > &) const
void get_all (vcl_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 42 of file vgl_rtree.h.


Member Typedef Documentation

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

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

Definition at line 19 of file vgl_rtree.txx.

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

Definition at line 33 of file vgl_rtree.txx.


Member Function Documentation

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 122 of file vgl_rtree.txx.

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

Definition at line 257 of file vgl_rtree.txx.

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

Definition at line 181 of file vgl_rtree.txx.

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 74 of file vgl_rtree.txx.

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 82 of file vgl_rtree.txx.

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

Definition at line 244 of file vgl_rtree.txx.

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

Definition at line 281 of file vgl_rtree.txx.

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

Definition at line 307 of file vgl_rtree.txx.

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

Definition at line 321 of file vgl_rtree.txx.

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

Definition at line 105 of file vgl_rtree.txx.

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

Definition at line 62 of file vgl_rtree.txx.

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

Definition at line 48 of file vgl_rtree.txx.

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

Definition at line 41 of file vgl_rtree.txx.

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

Definition at line 55 of file vgl_rtree.txx.


Friends And Related Function Documentation

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

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

Definition at line 48 of file vgl_rtree.h.

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.

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.

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.

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

Definition at line 51 of file vgl_rtree.h.

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.

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.

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: