#include <vgtl_ldag.h>
Public Types | |
typedef _Tp | value_type |
typedef _Ptr | pointer |
typedef _Ref | reference |
typedef _Te | edge_value_type |
typedef _Ctr_iterator | out_edge_iterator |
typedef _Ctr_iterator | in_edge_iterator |
typedef _Ctr_const_iterator | out_edge_const_iterator |
typedef _Ctr_const_iterator | in_edge_const_iterator |
typedef _Node | node_type |
typedef _Edge | edge_type |
typedef out_edge_iterator | children_iterator |
typedef in_edge_iterator | parents_iterator |
typedef out_edge_const_iterator | children_const_iterator |
typedef in_edge_const_iterator | parents_const_iterator |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
Public Member Functions | |
_LDG_walker () | |
_LDG_walker (_Node *__x) | |
_LDG_walker (const walker &__x) | |
reference | operator* () const |
pointer | operator-> () const |
const _Node * | node () |
size_type | out_degree () const |
size_type | in_degree () const |
size_type | n_children () const |
size_type | n_children () const |
bool | is_source () const |
bool | is_root () const |
bool | is_sink () const |
bool | is_leaf () const |
bool | is_ground () const |
bool | is_sky () const |
template<class _Function > | |
_Function | for_each_child (_Function __f) |
template<class _Function > | |
_Function | for_each_parent (_Function __f) |
_Self | operator<< (in_iterator __i) |
_Self | operator>> (out_iterator __i) |
_Self & | operator<<= (in_iterator __i) |
_Self & | operator>>= (out_iterator __i) |
_Self | operator<< (in_const_iterator __i) |
_Self | operator>> (out_const_iterator __i) |
_Self & | operator<<= (parents_const_iterator __i) |
_Self & | operator>>= (children_const_iterator __i) |
_Self & | operator= (const _Itr &__x) |
_Self & | operator= (const _Self &__x) |
_Self & | operator= (const _Node &__n) |
out_iterator | out_begin () |
out_const_iterator | out_begin () const |
out_iterator | child_begin () |
out_const_iterator | child_begin () const |
out_iterator | out_end () |
out_const_iterator | out_end () const |
out_iterator | child_end () |
out_const_iterator | child_end () const |
in_iterator | in_begin () |
in_const_iterator | in_begin () const |
in_iterator | parent_begin () |
in_const_iterator | parent_begin () const |
in_iterator | in_end () |
in_const_iterator | in_end () const |
in_iterator | in_end () |
in_const_iterator | in_end () const |
bool | operator== (const _Self &__x) const |
bool | operator!= (const _Self &__x) const |
Public Attributes | |
_Node * | _C_w_cur |
Definition at line 62 of file vgtl_ldag.h.
typedef out_edge_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::children_const_iterator |
standard walker definition
Definition at line 100 of file vgtl_ldag.h.
typedef out_edge_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::children_iterator |
standard walker definition
Definition at line 98 of file vgtl_ldag.h.
typedef ptrdiff_t _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::difference_type |
standard walker definition
Definition at line 104 of file vgtl_ldag.h.
typedef _Edge _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::edge_type |
standard walker definition
Definition at line 96 of file vgtl_ldag.h.
typedef _Te _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::edge_value_type |
standard walker definition
Definition at line 79 of file vgtl_ldag.h.
typedef _Ctr_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_edge_const_iterator |
standard walker definition
Definition at line 94 of file vgtl_ldag.h.
typedef _Ctr_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_edge_iterator |
standard walker definition
Definition at line 92 of file vgtl_ldag.h.
typedef _Node _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::node_type |
standard walker definition
Definition at line 95 of file vgtl_ldag.h.
typedef _Ctr_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_edge_const_iterator |
standard walker definition
Definition at line 93 of file vgtl_ldag.h.
typedef _Ctr_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_edge_iterator |
standard walker definition
Definition at line 91 of file vgtl_ldag.h.
typedef in_edge_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::parents_const_iterator |
standard walker definition
Definition at line 101 of file vgtl_ldag.h.
typedef in_edge_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::parents_iterator |
standard walker definition
Definition at line 99 of file vgtl_ldag.h.
typedef _Ptr _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::pointer |
standard walker definition
Definition at line 77 of file vgtl_ldag.h.
typedef _Ref _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::reference |
standard walker definition
Definition at line 78 of file vgtl_ldag.h.
typedef size_t _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::size_type |
standard walker definition
Definition at line 103 of file vgtl_ldag.h.
typedef _Tp _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::value_type |
standard walker definition
Definition at line 76 of file vgtl_ldag.h.
_LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::_LDG_walker | ( | ) | [inline] |
standard constructor
Definition at line 113 of file vgtl_ldag.h.
_LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::_LDG_walker | ( | _Node * | __x | ) | [inline] |
constructor setting the position
Definition at line 117 of file vgtl_ldag.h.
_LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::_LDG_walker | ( | const walker & | __x | ) | [inline] |
copy constructor
Definition at line 120 of file vgtl_ldag.h.
out_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::child_begin | ( | ) | const [inline] |
return out_iterator to first child
Definition at line 180 of file vgtl_ldag.h.
out_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::child_begin | ( | ) | [inline] |
return out_iterator to first child
Definition at line 179 of file vgtl_ldag.h.
out_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::child_end | ( | ) | const [inline] |
return out_iterator beyond last child
Definition at line 188 of file vgtl_ldag.h.
out_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::child_end | ( | ) | [inline] |
return out_iterator beyond last child
Definition at line 187 of file vgtl_ldag.h.
_Function _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::for_each_child | ( | _Function | __f | ) | [inline] |
apply the function __f
to all children
Definition at line 210 of file vgtl_ldag.h.
_Function _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::for_each_parent | ( | _Function | __f | ) | [inline] |
apply the function __f
to all parents
Definition at line 216 of file vgtl_ldag.h.
in_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_begin | ( | ) | const [inline] |
return in_iterator to first parent
Definition at line 194 of file vgtl_ldag.h.
in_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_begin | ( | ) | [inline] |
return in_iterator to first parent
Definition at line 193 of file vgtl_ldag.h.
size_type _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_degree | ( | ) | const [inline] |
return the in degree
Definition at line 137 of file vgtl_ldag.h.
in_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_end | ( | ) | const [inline] |
return in_iterator beyond last parent
Definition at line 205 of file vgtl_ldag.h.
in_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_end | ( | ) | [inline] |
return in_iterator beyond last parent
Definition at line 204 of file vgtl_ldag.h.
in_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_end | ( | ) | const [inline] |
return in_iterator beyond last parent
Definition at line 202 of file vgtl_ldag.h.
in_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::in_end | ( | ) | [inline] |
return in_iterator beyond last parent
Definition at line 201 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::is_ground | ( | ) | const [inline] |
is this node a virtual node - the ground (below all roots)?
Definition at line 170 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::is_leaf | ( | ) | const [inline] |
is this node a leaf?
Definition at line 167 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::is_root | ( | ) | const [inline] |
is this node a root?
Definition at line 155 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::is_sink | ( | ) | const [inline] |
is this node a local sink?
Definition at line 157 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::is_sky | ( | ) | const [inline] |
is this node a virtual node - the sky (above all leafs)?
Definition at line 172 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::is_source | ( | ) | const [inline] |
is this node a local source?
Definition at line 145 of file vgtl_ldag.h.
size_type _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::n_children | ( | ) | const [inline] |
return the number of parents (the in degree)
Definition at line 142 of file vgtl_ldag.h.
size_type _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::n_children | ( | ) | const [inline] |
return the number of children (the out degree)
Definition at line 140 of file vgtl_ldag.h.
const _Node* _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::node | ( | ) | [inline] |
retrieve the full node
Definition at line 132 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator!= | ( | const _Self & | __x | ) | const [inline] |
comparison operator
Definition at line 226 of file vgtl_ldag.h.
reference _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator* | ( | ) | const [inline] |
dereference operator
Definition at line 123 of file vgtl_ldag.h.
pointer _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator-> | ( | ) | const [inline] |
pointer operator
Definition at line 127 of file vgtl_ldag.h.
_Self _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator<< | ( | in_const_iterator | __i | ) | [inline] |
this function returns the walker pointing to the required parent
Definition at line 261 of file vgtl_ldag.h.
_Self _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator<< | ( | in_iterator | __i | ) | [inline] |
this function returns the walker pointing to the required parent
Definition at line 231 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator<<= | ( | parents_const_iterator | __i | ) | [inline] |
here the original walker goes to the required parent
Definition at line 277 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator<<= | ( | in_iterator | __i | ) | [inline] |
here the original walker goes to the required parent
Definition at line 247 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator= | ( | const _Node & | __n | ) | [inline] |
a walker is assigned to any pointer to a graph node
Definition at line 303 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator= | ( | const _Self & | __x | ) | [inline] |
standard assignment operator
Definition at line 297 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator= | ( | const _Itr & | __x | ) | [inline] |
new walker is assigned from that particular iterator
Definition at line 291 of file vgtl_ldag.h.
bool _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator== | ( | const _Self & | __x | ) | const [inline] |
comparison operator
Definition at line 224 of file vgtl_ldag.h.
_Self _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator>> | ( | out_const_iterator | __i | ) | [inline] |
this function returns the walker pointing to the required child
Definition at line 269 of file vgtl_ldag.h.
_Self _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator>> | ( | out_iterator | __i | ) | [inline] |
this function returns the walker pointing to the required child
Definition at line 239 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator>>= | ( | children_const_iterator | __i | ) | [inline] |
here the original walker goes to the required child
Definition at line 284 of file vgtl_ldag.h.
_Self& _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::operator>>= | ( | out_iterator | __i | ) | [inline] |
here the original walker goes to the required child
Definition at line 254 of file vgtl_ldag.h.
out_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_begin | ( | ) | const [inline] |
return out_iterator to first child
Definition at line 177 of file vgtl_ldag.h.
out_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_begin | ( | ) | [inline] |
return out_iterator to first child
Definition at line 176 of file vgtl_ldag.h.
size_type _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_degree | ( | ) | const [inline] |
return the out degree
Definition at line 135 of file vgtl_ldag.h.
out_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_end | ( | ) | const [inline] |
return out_iterator beyond last child
Definition at line 185 of file vgtl_ldag.h.
out_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::out_end | ( | ) | [inline] |
return out_iterator beyond last child
Definition at line 184 of file vgtl_ldag.h.
in_const_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::parent_begin | ( | ) | const [inline] |
return in_iterator to first parent
Definition at line 197 of file vgtl_ldag.h.
in_iterator _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::parent_begin | ( | ) | [inline] |
return in_iterator to first parent
Definition at line 196 of file vgtl_ldag.h.
_Node* _LDG_walker< _Tp, _Ref, _Ptr, _Ctr, _Iterator, _CIterator, _Te >::_C_w_cur |
pointer to the current node
Definition at line 109 of file vgtl_ldag.h.