#include <vgtl_tree.h>
Public Types | |
typedef _Tp | value_type |
typedef _Ptr | pointer |
typedef _Ref | reference |
typedef __one_iterator< void * > | parents_iterator |
typedef _Ctr_iterator | children_iterator |
typedef _Node | node_type |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
Public Member Functions | |
_Tree_walker_base () | |
_Tree_walker_base (_Node *__x) | |
_Tree_walker_base (const walker &__x) | |
reference | operator* () const |
pointer | operator-> () const |
_Self & | operator= (const _Itr &__x) |
ctree_data_hook & | data_hook () |
ctree_data_hook & | parent_data_hook () |
const _Node * | parent () |
const _Node * | node () |
size_type | n_children () |
size_type | n_parents () |
bool | is_leaf () |
bool | is_root () |
bool | is_ground () |
bool | is_sky () |
children_iterator | child_begin () |
children_iterator | child_end () |
parents_iterator | parent_begin () |
parents_iterator | parent_end () |
template<class _Function > | |
_Function | for_each_child (_Function __f) |
template<class _Function > | |
_Function | for_each_parent (_Function __f) |
template<class Compare > | |
void | sort_children (children_iterator first, children_iterator last, Compare comp) |
template<class Compare > | |
void | sort_parents (parents_iterator first, parents_iterator last, Compare comp) |
template<class Compare > | |
void | sort_children (Compare comp) |
template<class Compare > | |
void | sort_parents (Compare comp) |
Public Attributes | |
_Node * | _C_w_cur |
Definition at line 222 of file vgtl_tree.h.
typedef _Ctr_iterator _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::children_iterator |
standard walker definition
Definition at line 243 of file vgtl_tree.h.
typedef ptrdiff_t _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::difference_type |
standard walker definition
Definition at line 247 of file vgtl_tree.h.
typedef _Node _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::node_type |
standard walker definition
Definition at line 244 of file vgtl_tree.h.
typedef __one_iterator<void *> _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::parents_iterator |
standard walker definition
Definition at line 242 of file vgtl_tree.h.
typedef _Ptr _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::pointer |
standard walker definition
Definition at line 233 of file vgtl_tree.h.
typedef _Ref _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::reference |
standard walker definition
Definition at line 234 of file vgtl_tree.h.
typedef size_t _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::size_type |
standard walker definition
Definition at line 246 of file vgtl_tree.h.
typedef _Tp _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::value_type |
standard walker definition
Definition at line 232 of file vgtl_tree.h.
_Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::_Tree_walker_base | ( | ) | [inline] |
standard constructor
Definition at line 256 of file vgtl_tree.h.
_Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::_Tree_walker_base | ( | _Node * | __x | ) | [inline] |
constructor setting the position
Definition at line 259 of file vgtl_tree.h.
_Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::_Tree_walker_base | ( | const walker & | __x | ) | [inline] |
copy constructor
Definition at line 262 of file vgtl_tree.h.
children_iterator _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::child_begin | ( | ) | [inline] |
return children_iterator to first child
Definition at line 307 of file vgtl_tree.h.
children_iterator _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::child_end | ( | ) | [inline] |
return children_iterator beyond last child
Definition at line 309 of file vgtl_tree.h.
ctree_data_hook& _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::data_hook | ( | ) | [inline] |
retrieve the data hook
Definition at line 280 of file vgtl_tree.h.
_Function _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::for_each_child | ( | _Function | __f | ) | [inline] |
apply the function __f
to all children
Definition at line 320 of file vgtl_tree.h.
_Function _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::for_each_parent | ( | _Function | __f | ) | [inline] |
apply the function __f
to all parents
Definition at line 326 of file vgtl_tree.h.
bool _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::is_ground | ( | ) | [inline] |
is this node a virtual node - the ground (below all roots)?
Definition at line 302 of file vgtl_tree.h.
bool _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::is_leaf | ( | ) | [inline] |
is this node a leaf?
Definition at line 296 of file vgtl_tree.h.
bool _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::is_root | ( | ) | [inline] |
is this node a root?
Definition at line 298 of file vgtl_tree.h.
bool _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::is_sky | ( | ) | [inline] |
is this node a virtual node - the sky (above all leafs)?
Definition at line 304 of file vgtl_tree.h.
size_type _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::n_children | ( | ) | [inline] |
return the number of children
Definition at line 291 of file vgtl_tree.h.
size_type _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::n_parents | ( | ) | [inline] |
return the number of parents (0 or 1)
Definition at line 293 of file vgtl_tree.h.
const _Node* _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::node | ( | ) | [inline] |
retrieve the full node
Definition at line 288 of file vgtl_tree.h.
reference _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::operator* | ( | ) | const [inline] |
dereference operator
Definition at line 265 of file vgtl_tree.h.
pointer _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::operator-> | ( | ) | const [inline] |
pointer operator
Definition at line 269 of file vgtl_tree.h.
_Self& _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::operator= | ( | const _Itr & | __x | ) | [inline] |
assignment operator from iterator to walker
Reimplemented in _Tree_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >, and _RTree_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator >.
Definition at line 274 of file vgtl_tree.h.
const _Node* _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::parent | ( | ) | [inline] |
retrieve the parent node
Definition at line 286 of file vgtl_tree.h.
parents_iterator _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::parent_begin | ( | ) | [inline] |
return parents_iterator to first parent (the parent)
Definition at line 312 of file vgtl_tree.h.
ctree_data_hook& _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::parent_data_hook | ( | ) | [inline] |
retrieve the parent's data hook
Definition at line 282 of file vgtl_tree.h.
parents_iterator _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::parent_end | ( | ) | [inline] |
return parents_iterator beyond last parent
Definition at line 315 of file vgtl_tree.h.
void _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::sort_children | ( | Compare | comp | ) | [inline] |
sort all children according to comp
Definition at line 344 of file vgtl_tree.h.
void _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::sort_children | ( | children_iterator | first, | |
children_iterator | last, | |||
Compare | comp | |||
) | [inline] |
sort the children in the range [first,last) according to comp
Definition at line 333 of file vgtl_tree.h.
void _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::sort_parents | ( | Compare | comp | ) | [inline] |
sort all parents according to comp
(NOP = do nothing)
Definition at line 349 of file vgtl_tree.h.
void _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::sort_parents | ( | parents_iterator | first, | |
parents_iterator | last, | |||
Compare | comp | |||
) | [inline] |
sort the parents in the range [first,last) according to comp
(NOP)
Definition at line 339 of file vgtl_tree.h.
_Node* _Tree_walker_base< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _Node >::_C_w_cur |
pointer to the current node
Definition at line 252 of file vgtl_tree.h.