#include <vgtl_ldag.h>
Public Types | |
typedef _Base::walker | walker |
typedef _Base::const_walker | const_walker |
typedef _Base::children_iterator | children_iterator |
typedef _Base::parents_iterator | parents_iterator |
typedef _Base::parents_const_iterator | parents_const_iterator |
typedef _Base::children_const_iterator | children_const_iterator |
typedef _SequenceCtr< void *, _PtrAlloc >::iterator | container_type |
typedef _SequenceCtr< void *, _PtrAlloc >::const_iterator | out_iterator |
typedef _SequenceCtr< void *, _PtrAlloc >::const_iterator | in_iterator |
typedef _SequenceCtr< void *, _PtrAlloc >::iterator | out_const_iterator |
typedef _SequenceCtr< void *, _PtrAlloc >::iterator | in_const_iterator |
typedef _Base::node_allocator_type | node_allocator_type |
typedef _Base::edge_allocator_type | edge_allocator_type |
typedef _LDG_iterator< _Tp, _Tp &, _Tp *, container_type, children_iterator, children_const_iterator, _SequenceCtr< void *, _PtrAlloc > > | iterator |
typedef _LDG_iterator< _Tp, const _Tp &, const _Tp *, container_type, children_iterator, children_const_iterator, _SequenceCtr< void *, _PtrAlloc > > | const_iterator |
typedef std::reverse_iterator < const_iterator > | const_reverse_iterator |
typedef std::reverse_iterator < iterator > | reverse_iterator |
typedef _Tp | value_type |
typedef _Node | node_type |
typedef _Edge | edge_type |
typedef value_type * | pointer |
typedef const value_type * | const_pointer |
typedef value_type & | reference |
typedef const value_type & | const_reference |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
Public Member Functions | |
ldgraph (const allocator_type &__a=allocator_type()) | |
ldgraph (const _Self &__dg) | |
ldgraph (const erased_part &__ep, const allocator_type &__a=allocator_type()) | |
void | clear () |
walker | between (const walker &__parent, const children_iterator &__cit, const walker &__child, const parents_iterator &__pit, const _Tp &__x) |
walker | split (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it, const _Tp &__x) |
walker | between_back (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | split_back (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | between_front (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | split_front (const walker &__parent, const walker &__child, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr1, template< class __Tp, class __AllocTp > class __SequenceCtr2, class _Allocator1 , class _Allocator2 > | |
walker | between (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr1, template< class __Tp, class __AllocTp > class __SequenceCtr2, class _Allocator1 , class _Allocator2 > | |
void | split (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const _Tp &__x) |
void | insert_subgraph (_Self &__subgraph, const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it) |
void | insert_back_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child) |
void | insert_front_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child) |
void | add_edge (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it) |
void | add_edge_back (const walker &__parent, const walker &__child) |
void | add_edge_front (const walker &__parent, const walker &__child) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | between (const walker &__parent, const children_iterator &__cit, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | split (const walker &__parent, const children_iterator &__ch_it, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | split_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | between_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | split_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | between_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | between (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pit, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | split (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pr_it, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | split_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | between_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | split_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
template<template< class __Tp, class __AllocTp > class __SequenceCtr, class _Allocator > | |
walker | between_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
_Self & | operator= (const _RV_LDG &__rl) |
_Self & | operator= (const erased_part &__ep) |
node_allocator_type | get_node_allocator () const |
edge_allocator_type | get_edge_allocator () const |
walker | ground () |
const_walker | ground () const |
walker | sky () |
const_walker | sky () const |
bool | empty () const |
size_type | size () const |
size_type | max_size () const |
void | swap (_Self &__x) |
walker | insert_node_in_graph (_Node *__n, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_node_in_graph (_Node *__node, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_node_in_graph (_Node *__node, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_node_in_graph (_Node *__node, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_in_graph (const _Tp &__x, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_in_graph (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_in_graph (const _Tp &__x, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_in_graph (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_in_graph (const _Tp &__x, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_in_graph (const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_in_graph (const _Tp &__x, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_in_graph (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
void | insert_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | insert_subgraph (_Self &__subgraph, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
void | add_edge (const edge &__edge, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | add_edge (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | replace_edge_to_child (const walker &__parent, const walker &__child_old, const walker &__child_new) |
void | replace_edge_to_parent (const walker &__parent_old, const walker &__parent_new, const walker &__child) |
void | remove_edge (const edge &__edge) |
void | remove_edge (const walker &__parent, const walker &__child) |
void | remove_edge_and_deattach (const walker &__parent, const walker &__child) |
void | sort_child_edges (walker __position, children_iterator first, children_iterator last, Compare comp) |
void | sort_child_edges (walker __position, Compare comp) |
void | sort_parent_edges (walker __position, parents_iterator first, parents_iterator last, Compare comp) |
void | sort_parent_edges (walker __position, Compare comp) |
walker | insert_node (_Node *_node, const walker &__position, const container_insert_arg &__It) |
walker | insert_node (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
walker | insert_node (const walker &__position, const container_insert_arg &__It) |
walker | insert_node_before (_Node *_node, const walker &__position, const container_insert_arg &__It) |
void | insert_node_before (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
void | insert_node_before (const walker &__position, const container_insert_arg &__It) |
void | merge (const walker &__position, const walker &__second, bool merge_parent_edges=true, bool merge_child_edges=true) |
void | erase (const walker &__position) |
void | partial_erase_to_parent (const walker &__position, const walker &__parent, unsigned int idx) |
void | clear_erased_part (erased_part &_ep) |
erased_part | erase_maximal_subgraph (const walker &__position) |
erased_part | erase_maximal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_minimal_subgraph (const walker &__position) |
erased_part | erase_minimal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_maximal_pregraph (const walker &__position) |
erased_part | erase_maximal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_minimal_pregraph (const walker &__position) |
erased_part | erase_minimal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
bool | erase_child (const walker &__position, const children_iterator &__It) |
bool | erase_parent (const walker &__position, const parents_iterator &__It) |
out_iterator | source_begin () |
out_iterator | root_begin () |
out_const_iterator | source_begin () const |
out_iterator | root_begin () |
out_iterator | source_end () |
out_iterator | root_end () |
out_const_iterator | source_end () const |
out_iterator | root_end () |
in_iterator | sink_begin () |
in_iterator | leaf_begin () |
in_const_iterator | sink_begin () const |
in_iterator | leaf_begin () |
in_iterator | sink_end () |
in_iterator | leaf_end () |
in_const_iterator | sink_end () const |
in_iterator | leaf_end () |
Protected Types | |
typedef _Base::erased_part | erased_part |
Protected Member Functions | |
_Node * | _C_create_node (const _Tp &__x) |
_Node * | _C_create_node () |
_Edge * | _C_create_edge (const _SequenceCtr< void *, _PtrAlloc > &__x) |
_Edge * | _C_create_edge () |
_Edge * | _C_create_edge (const _SequenceCtr< void *, _PtrAlloc > &__x, _Node *__s, _Node *__t) |
_Edge * | _C_create_edge (_Node *__s, _Node *__t) |
void | clear_graph (_LDG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > *_node) |
_LDG_node< _Tp, _SequenceCtr < void *, _PtrAlloc > ::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | _C_get_node () |
void | _C_put_node (_LDG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > *__p) |
_LDG_edge< _SequenceCtr< void *, _PtrAlloc >, _Node > * | _C_get_edge () |
void | _C_put_edge (_LDG_edge< _SequenceCtr< void *, _PtrAlloc >, _Node > *__p) |
void | clear_out_edges () |
void | clear_in_edges () |
void | add_all_out_edges (_Output_Iterator fi, _LDG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > *_parent) |
void | add_all_in_edges (_Output_Iterator fi, _LDG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > *_child) |
Protected Attributes | |
_LDG_node< _Tp, _SequenceCtr < void *, _PtrAlloc > ::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | _C_ground |
_LDG_node< _Tp, _SequenceCtr < void *, _PtrAlloc > ::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | _C_sky |
int | _C_mark |
Definition at line 2214 of file vgtl_ldag.h.
typedef _Base::children_const_iterator ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::children_const_iterator |
the children const iterator
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2249 of file vgtl_ldag.h.
typedef _Base::children_iterator ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::children_iterator |
the children iterator
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2243 of file vgtl_ldag.h.
typedef _LDG_iterator<_Tp ,const _Tp &,const _Tp *,container_type, children_iterator,children_const_iterator,_SequenceCtr< void *, _PtrAlloc > > __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::const_iterator [inherited] |
the const iterator
Definition at line 651 of file vgtl_ldag.h.
typedef const value_type* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::const_pointer [inherited] |
standard typedef
Definition at line 630 of file vgtl_ldag.h.
typedef const value_type& __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::const_reference [inherited] |
standard typedef
Definition at line 632 of file vgtl_ldag.h.
typedef std::reverse_iterator<const_iterator> __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::const_reverse_iterator [inherited] |
the const reverse iterator
Definition at line 655 of file vgtl_ldag.h.
typedef _Base::const_walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::const_walker |
the const walker
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2241 of file vgtl_ldag.h.
typedef _SequenceCtr< void *, _PtrAlloc >::iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::container_type [inherited] |
internal container used to store the edges
Definition at line 601 of file vgtl_ldag.h.
typedef ptrdiff_t __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::difference_type [inherited] |
standard typedef
Definition at line 634 of file vgtl_ldag.h.
typedef _Base::edge_allocator_type __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::edge_allocator_type [inherited] |
edge allocator type
Definition at line 641 of file vgtl_ldag.h.
typedef _Edge __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::edge_type [inherited] |
standard typedef
Definition at line 628 of file vgtl_ldag.h.
typedef _Base::erased_part ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::erased_part [protected] |
an edge of the graph (parent, child) an edge with additiona information about erased ground/sky edges an erased subgraph which is not yet a new directed graph
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2235 of file vgtl_ldag.h.
typedef _SequenceCtr< void *, _PtrAlloc >::iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::in_const_iterator [inherited] |
const iterator for accessing the out edges
Definition at line 605 of file vgtl_ldag.h.
typedef _SequenceCtr< void *, _PtrAlloc >::const_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::in_iterator [inherited] |
iterator for accessing the in edges
Definition at line 603 of file vgtl_ldag.h.
typedef _LDG_iterator<_Tp ,_Tp &,_Tp *,container_type,children_iterator, children_const_iterator,_SequenceCtr< void *, _PtrAlloc > > __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::iterator [inherited] |
the iterator
Definition at line 648 of file vgtl_ldag.h.
typedef _Base::node_allocator_type __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::node_allocator_type [inherited] |
node allocator type
Definition at line 637 of file vgtl_ldag.h.
typedef _Node __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::node_type [inherited] |
standard typedef
Definition at line 627 of file vgtl_ldag.h.
typedef _SequenceCtr< void *, _PtrAlloc >::iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::out_const_iterator [inherited] |
const iterator for accessing the out edges
Definition at line 604 of file vgtl_ldag.h.
typedef _SequenceCtr< void *, _PtrAlloc >::const_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::out_iterator [inherited] |
iterator for accessing the out edges
Definition at line 602 of file vgtl_ldag.h.
typedef _Base::parents_const_iterator ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::parents_const_iterator |
the parents const iterator
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2247 of file vgtl_ldag.h.
typedef _Base::parents_iterator ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::parents_iterator |
the parents iterator
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2245 of file vgtl_ldag.h.
typedef value_type* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::pointer [inherited] |
standard typedef
Definition at line 629 of file vgtl_ldag.h.
typedef value_type& __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::reference [inherited] |
standard typedef
Definition at line 631 of file vgtl_ldag.h.
typedef std::reverse_iterator<iterator> __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::reverse_iterator [inherited] |
the reverse iterator
Definition at line 657 of file vgtl_ldag.h.
typedef size_t __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::size_type [inherited] |
standard typedef
Definition at line 633 of file vgtl_ldag.h.
typedef _Tp __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::value_type [inherited] |
standard typedef
Definition at line 626 of file vgtl_ldag.h.
typedef _Base::walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::walker |
the walker
Reimplemented in ldag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 2239 of file vgtl_ldag.h.
ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::ldgraph | ( | const allocator_type & | __a = allocator_type() |
) | [inline, explicit] |
standard constructor
Definition at line 2253 of file vgtl_ldag.h.
ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::ldgraph | ( | const _Self & | __dg | ) | [inline] |
copy constructor
Definition at line 2256 of file vgtl_ldag.h.
ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::ldgraph | ( | const erased_part & | __ep, | |
const allocator_type & | __a = allocator_type() | |||
) | [inline] |
constructor from an erased_part
Definition at line 2259 of file vgtl_ldag.h.
_Edge* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::_C_create_edge | ( | _Node * | __s, | |
_Node * | __t | |||
) | [inline, protected, inherited] |
construct a new graph edge containing default data with source __s
and target __t
.
Definition at line 766 of file vgtl_ldag.h.
_Edge* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::_C_create_edge | ( | const _SequenceCtr< void *, _PtrAlloc > & | __x, | |
_Node * | __s, | |||
_Node * | __t | |||
) | [inline, protected, inherited] |
construct a new graph edge containing data __x
with source __s
and target __t
.
Definition at line 751 of file vgtl_ldag.h.
_Edge* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::_C_create_edge | ( | ) | [inline, protected, inherited] |
construct a new graph edge containing default data
Definition at line 738 of file vgtl_ldag.h.
_Edge* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::_C_create_edge | ( | const _SequenceCtr< void *, _PtrAlloc > & | __x | ) | [inline, protected, inherited] |
construct a new graph edge containing data __x
Definition at line 726 of file vgtl_ldag.h.
_Node* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::_C_create_node | ( | ) | [inline, protected, inherited] |
construct a new graph node containing default data
Definition at line 712 of file vgtl_ldag.h.
_Node* __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::_C_create_node | ( | const _Tp & | __x | ) | [inline, protected, inherited] |
construct a new graph node containing data __x
Definition at line 698 of file vgtl_ldag.h.
_LDG_edge<_SequenceCtr< void *, _PtrAlloc > ,_Node>* _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_get_edge | ( | ) | [inline, protected, inherited] |
allocate a new edge
Definition at line 533 of file vgtl_ldagbase.h.
_LDG_node<_Tp ,_SequenceCtr< void *, _PtrAlloc >::iterator ,_SequenceCtr< void *, _PtrAlloc >::const_iterator >* _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_get_node | ( | ) | [inline, protected, inherited] |
allocate a new node
Definition at line 526 of file vgtl_ldagbase.h.
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_put_edge | ( | _LDG_edge< _SequenceCtr< void *, _PtrAlloc > , _Node > * | __p | ) | [inline, protected, inherited] |
deallocate a edge
Definition at line 536 of file vgtl_ldagbase.h.
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_put_node | ( | _LDG_node< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | __p | ) | [inline, protected, inherited] |
deallocate a node
Definition at line 529 of file vgtl_ldagbase.h.
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::add_all_in_edges | ( | _Output_Iterator | fi, | |
_LDG_node< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | _child | |||
) | [inline, protected, inherited] |
add all in edges to the child _child
. fi
is a iterator to the in edges container of the child
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::add_all_out_edges | ( | _Output_Iterator | fi, | |
_LDG_node< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | _parent | |||
) | [inline, protected, inherited] |
add all out edges to the parent _parent
. fi
is a iterator to the out edges container of the parent
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::add_edge | ( | const walker & | __parent, | |
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inline, inherited] |
add an edge between __parent
and __child
at positions __Itc
and __Itp
, respectively
Definition at line 1200 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::add_edge | ( | const edge & | __edge, | |
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inline, inherited] |
add one edge between two nodes at the positions described by __Itc
and __Itp
.
Definition at line 1191 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::add_edge | ( | const walker & | __parent, | |
const children_iterator & | __ch_it, | |||
const walker & | __child, | |||
const parents_iterator & | __pa_it | |||
) | [inline] |
add an edge between __parent
and __child
at specific positions __ch_it
and __pa_it
.
Definition at line 2488 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::add_edge_back | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inline] |
add an edge between __parent
and __child
at the end of the children and parents containers.
Definition at line 2498 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::add_edge_front | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inline] |
add an edge between __parent
and __child
at the beginning of the children and parents containers.
Definition at line 2508 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const parents_iterator & | __pit, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and one child but the previous bonds are not broken, the node is always new
Definition at line 2624 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between | ( | const walker & | __parent, | |
const children_iterator & | __cit, | |||
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between one parent and many children but the previous bonds are not broken, the node is always new
Definition at line 2524 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and many children but the previous bonds are not broken, the node is always new
Definition at line 2378 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between | ( | const walker & | __parent, | |
const children_iterator & | __cit, | |||
const walker & | __child, | |||
const parents_iterator & | __pit, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between a parent node and a child node but the previous bonds between the two are not broken, the node is always new with data __x
.
Definition at line 2276 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between_back | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and one child but the previous bonds are not broken, the node is always new. At the child the new parent is put last.
Definition at line 2678 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between_back | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between one parent and many children but the previous bonds are not broken, the node is always new. At the parent the new child is put last.
Definition at line 2579 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between_back | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
insert the node as the last child between parent and child, without breaking old bonds.
Definition at line 2311 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between_front | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and one child but the previous bonds are not broken, the node is always new. At the child the new parent is put first.
Definition at line 2706 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between_front | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between one parent and many children but the previous bonds are not broken, the node is always new. At the parent the new child is put first.
Definition at line 2609 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::between_front | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
Here the inserted node is the first child of its parent and first parent of its child. Insert the node without breaking old bonds.
Definition at line 2342 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::clear | ( | ) | [inline] |
empty the graph
Definition at line 2269 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::clear_erased_part | ( | erased_part & | _ep | ) | [inline, inherited] |
clear all nodes in an erased part
Definition at line 1868 of file vgtl_ldag.h.
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::clear_graph | ( | _LDG_node< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator > * | _node | ) | [protected, inherited] |
removes recursively all nodes and edges downward starting from _node.
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::clear_in_edges | ( | ) | [inline, protected, inherited] |
clear all in edges of the sky node
Definition at line 551 of file vgtl_ldagbase.h.
void _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::clear_out_edges | ( | ) | [inline, protected, inherited] |
clear all out edges of the ground node
Definition at line 548 of file vgtl_ldagbase.h.
bool __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::empty | ( | ) | const [inline, inherited] |
returns true
if the DG is empty
Definition at line 888 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase | ( | const walker & | __position | ) | [inline, inherited] |
erase a node from the DG except the sky and ground
Definition at line 1518 of file vgtl_ldag.h.
bool __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_child | ( | const walker & | __position, | |
const children_iterator & | __It | |||
) | [inline, inherited] |
Erase a child of __position
. This works if and only if the child has only one child and no other parents.
Definition at line 2020 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_maximal_pregraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inline, inherited] |
here every child is removed till the sky included all nodes from __positions
. The removed subgraph is returned. The subgraph is maximal, i.e. all nodes are removed, which are reachable from any node from __positions
by walking up.
Definition at line 1984 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_maximal_pregraph | ( | const walker & | __position | ) | [inline, inherited] |
here every child is removed till the sky node. included the node at __position
. The removed subgraph is returned. The subgraph is maximal, i.e. all nodes are removed, which are reachable from __position
by walking upwards.
Definition at line 1950 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_maximal_subgraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inline, inherited] |
here every child is removed till the last base node, included all nodes from __positions
. The removed subgraph is returned. The subgraph is maximal, i.e. all nodes are removed, which are reachable from any node from __positions
by walking down.
Definition at line 1913 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_maximal_subgraph | ( | const walker & | __position | ) | [inline, inherited] |
here every child is removed till the last base node, included the node at __position
. The removed subgraph is returned. The subgraph is maximal, i.e. all nodes are removed, which are reachable from __position
by walking down.
Definition at line 1879 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_minimal_pregraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inline, inherited] |
here every child is removed till the sky. included all nodes from __positions
. The removed subgraph is returned. The subgraph is minimal, i.e. only nodes are removed, which have no other ancestor than any node in __positions
. I.e., when walking towards the ground, there is no way which bypasses all nodes in __positions
.
Definition at line 2004 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_minimal_pregraph | ( | const walker & | __position | ) | [inline, inherited] |
here every child is removed till the sky. included the node at __position
. The removed subgraph is returned. The subgraph is minimal, i.e. only nodes are removed, which have no other descendant than __position
. I.e., when walking towards the sky, there is no way which bypasses __position
.
Definition at line 1966 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_minimal_subgraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inline, inherited] |
here every child is removed till the last base node, included all nodes from __positions
. The removed subgraph is returned. The subgraph is minimal, i.e. only nodes are removed, which have no other ancestor than any node in __positions
. I.e., when walking towards the ground, there is no way which bypasses all nodes in __positions
.
Definition at line 1933 of file vgtl_ldag.h.
erased_part __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_minimal_subgraph | ( | const walker & | __position | ) | [inline, inherited] |
here every child is removed till the last base node, included the node at __position
. The removed subgraph is returned. The subgraph is minimal, i.e. only nodes are removed, which have no other ancestor than __position
. I.e., when walking towards the ground, there is no way which bypasses __position
.
Definition at line 1895 of file vgtl_ldag.h.
bool __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::erase_parent | ( | const walker & | __position, | |
const parents_iterator & | __It | |||
) | [inline, inherited] |
Erase a parent of __position
. This works if and only if the parent has only one parent and no other children.
Definition at line 2046 of file vgtl_ldag.h.
edge_allocator_type __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::get_edge_allocator | ( | ) | const [inline, inherited] |
construct an edge allocator object
Definition at line 643 of file vgtl_ldag.h.
node_allocator_type __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::get_node_allocator | ( | ) | const [inline, inherited] |
construct a node allocator object
Definition at line 639 of file vgtl_ldag.h.
const_walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::ground | ( | ) | const [inline, inherited] |
return a const walker to the virtual ground node.
Definition at line 794 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::ground | ( | ) | [inline, inherited] |
return a walker to the virtual ground node.
Definition at line 784 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::insert_back_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child | |||
) | [inline] |
here a subgraph is inserted between a parent and a child, at the end of the children resp. parents lists.
Definition at line 2447 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::insert_front_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child | |||
) | [inline] |
here a subgraph is inserted between a parent and a child, at the front of the children resp. parents lists.
Definition at line 2460 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inline, inherited] |
insert a node with default data into the graph between all parents from __parents
and the child __child
.
Definition at line 1127 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const _Tp & | __x, | |
const __SequenceCtr< walker, _Allocator > & | __parents, | |||
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inline, inherited] |
insert a node with data __x
into the graph between all parents from __parents
and the child __child
.
Definition at line 1112 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const walker & | __parent, | |
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inline, inherited] |
insert a node with data __x
into the graph between the parent __parent
and all children from __children
.
Definition at line 1073 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const _Tp & | __x, | |
const walker & | __parent, | |||
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inline, inherited] |
insert a node with data __x
into the graph between the parent __parent
and all children from __children
.
Definition at line 1059 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inline, inherited] |
insert a node with default data into the graph between all parents from __parents
and all children from __children
.
Definition at line 1021 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const _Tp & | __x, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inline, inherited] |
insert a node with data __x
into the graph between all parents from __parents
and all children from __children
.
Definition at line 1006 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const walker & | __parent, | |
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inline, inherited] |
insert node with default data into the graph between __parent
and __child
, the edge at the specific positions described by __Itc
and __Itp
.
Definition at line 942 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_in_graph | ( | const _Tp & | __x, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inline, inherited] |
insert node with data __n
into the graph between __parent
and __child
, the edge at the specific positions described by __Itc
and __Itp
.
Definition at line 928 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node | ( | const walker & | __position, | |
const container_insert_arg & | __It | |||
) | [inline, inherited] |
insert a new node with default data as child of __position
Definition at line 1399 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node | ( | const _Tp & | __x, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inline, inherited] |
insert a new node with data __x
as child of __position
Definition at line 1393 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node | ( | _Node * | _node, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inline, inherited] |
insert one node as child of __position
Definition at line 1379 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_before | ( | const walker & | __position, | |
const container_insert_arg & | __It | |||
) | [inline, inherited] |
insert a new node with default data as parent of __position
Definition at line 1423 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_before | ( | const _Tp & | __x, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inline, inherited] |
insert a new node with data __x
as parent of __position
Definition at line 1418 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_before | ( | _Node * | _node, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inline, inherited] |
insert a node as parent of __position
Definition at line 1404 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_in_graph | ( | _Node * | __node, | |
const __SequenceCtr< walker, _Allocator > & | __parents, | |||
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inline, inherited] |
insert node __n
into the graph between all parents from __parents
and the child __child
.
Definition at line 1087 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_in_graph | ( | _Node * | __node, | |
const walker & | __parent, | |||
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inline, inherited] |
insert node __n
into the graph between the parent __parent
and all children from __children
.
Definition at line 1034 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_in_graph | ( | _Node * | __node, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inline, inherited] |
insert node __n
into the graph between all parents from __parents
and all children from __children
.
Definition at line 975 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_node_in_graph | ( | _Node * | __n, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inline, inherited] |
insert node __n
into the graph between __parent
and __child
, the edge at the specific positions described by __Itc
and __Itp
.
Definition at line 912 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_subgraph | ( | _Self & | __subgraph, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inline, inherited] |
in this method one DG is inserted into another DG between the parents __parents
and the children __children
.
Definition at line 1141 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::insert_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inline, inherited] |
insert a subgraph into the graph between __parent
and __child
, the edge at the specific positions described by __Itc
and __Itp
.
Definition at line 953 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::insert_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const children_iterator & | __ch_it, | |||
const walker & | __child, | |||
const parents_iterator & | __pa_it | |||
) | [inline] |
here a subgraph is inserted between a parent and a child, at specific positions __ch_it
and __pa_it
.
Definition at line 2436 of file vgtl_ldag.h.
in_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::leaf_begin | ( | ) | [inline, inherited] |
return the first local sink of the directed graph
Definition at line 846 of file vgtl_ldag.h.
in_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::leaf_begin | ( | ) | [inline, inherited] |
return the first local sink of the directed graph
Definition at line 833 of file vgtl_ldag.h.
in_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::leaf_end | ( | ) | [inline, inherited] |
return beyond the last local sink of the directed graph
Definition at line 852 of file vgtl_ldag.h.
in_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::leaf_end | ( | ) | [inline, inherited] |
return beyond the last local sink of the directed graph
Definition at line 839 of file vgtl_ldag.h.
size_type __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::max_size | ( | ) | const [inline, inherited] |
the maximum size of a DG is virtually unlimited
Definition at line 899 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::merge | ( | const walker & | __position, | |
const walker & | __second, | |||
bool | merge_parent_edges = true , |
|||
bool | merge_child_edges = true | |||
) | [inline, inherited] |
merge two nodes, call also the merge method for the node data
Definition at line 1429 of file vgtl_ldag.h.
_Self& ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::operator= | ( | const erased_part & | __ep | ) | [inline] |
assignment operator from an erased part
Definition at line 2723 of file vgtl_ldag.h.
_Self& ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::operator= | ( | const _RV_LDG & | __rl | ) | [inline] |
assignment operator from a part of an erased part
Definition at line 2715 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::partial_erase_to_parent | ( | const walker & | __position, | |
const walker & | __parent, | |||
unsigned int | idx | |||
) | [inline, inherited] |
split a node in two, the first connected to the __parent, the second connected to all other parents. Then erase the first node.
Definition at line 1578 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::remove_edge | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inline, inherited] |
just remove one edge between __parent
and __child
Definition at line 1332 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::remove_edge | ( | const edge & | __edge | ) | [inline, inherited] |
remove an edge with a particular parent and child
Definition at line 1315 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::remove_edge_and_deattach | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inline, inherited] |
remove one egde and don't reconnect the node to sky/ground
Definition at line 1319 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::replace_edge_to_child | ( | const walker & | __parent, | |
const walker & | __child_old, | |||
const walker & | __child_new | |||
) | [inline, inherited] |
change the edge from __parent
to __child_old
to an edge from __parent
to __child_new
.
Definition at line 1243 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::replace_edge_to_parent | ( | const walker & | __parent_old, | |
const walker & | __parent_new, | |||
const walker & | __child | |||
) | [inline, inherited] |
change the edge from __parent_old
to __child
to an edge from __parent_new
to __child
.
Definition at line 1281 of file vgtl_ldag.h.
out_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::root_begin | ( | ) | [inline, inherited] |
return the first local source of the directed graph
Definition at line 820 of file vgtl_ldag.h.
out_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::root_begin | ( | ) | [inline, inherited] |
return the first local source of the directed graph
Definition at line 807 of file vgtl_ldag.h.
out_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::root_end | ( | ) | [inline, inherited] |
return beyond the last local source of the directed graph
Definition at line 826 of file vgtl_ldag.h.
out_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::root_end | ( | ) | [inline, inherited] |
return beyond the last local source of the directed graph
Definition at line 813 of file vgtl_ldag.h.
in_const_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sink_begin | ( | ) | const [inline, inherited] |
return the first local sink of the directed graph
Definition at line 844 of file vgtl_ldag.h.
in_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sink_begin | ( | ) | [inline, inherited] |
return the first local sink of the directed graph
Definition at line 831 of file vgtl_ldag.h.
in_const_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sink_end | ( | ) | const [inline, inherited] |
return beyond the last local sink of the directed graph
Definition at line 850 of file vgtl_ldag.h.
in_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sink_end | ( | ) | [inline, inherited] |
return beyond the last local sink of the directed graph
Definition at line 837 of file vgtl_ldag.h.
size_type __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::size | ( | ) | const [inline, inherited] |
returns the size of the DG (number of nodes)
Definition at line 892 of file vgtl_ldag.h.
const_walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sky | ( | ) | const [inline, inherited] |
return a const walker to the virtual sky node.
Definition at line 799 of file vgtl_ldag.h.
walker __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sky | ( | ) | [inline, inherited] |
return a walker to the virtual sky node.
Definition at line 789 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sort_child_edges | ( | walker | __position, | |
Compare | comp | |||
) | [inline, inherited] |
sort all child edges according to comp
Definition at line 1368 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sort_child_edges | ( | walker | __position, | |
children_iterator | first, | |||
children_iterator | last, | |||
Compare | comp | |||
) | [inline, inherited] |
sort the child edges in the range [first,last) according to comp
Definition at line 1356 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sort_parent_edges | ( | walker | __position, | |
Compare | comp | |||
) | [inline, inherited] |
sort all parent edges according to comp
Definition at line 1374 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::sort_parent_edges | ( | walker | __position, | |
parents_iterator | first, | |||
parents_iterator | last, | |||
Compare | comp | |||
) | [inline, inherited] |
sort the parent edges in the range [first,last) according to comp
Definition at line 1362 of file vgtl_ldag.h.
out_const_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::source_begin | ( | ) | const [inline, inherited] |
return the first local source of the directed graph
Definition at line 818 of file vgtl_ldag.h.
out_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::source_begin | ( | ) | [inline, inherited] |
return the first local source of the directed graph
Definition at line 805 of file vgtl_ldag.h.
out_const_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::source_end | ( | ) | const [inline, inherited] |
return beyond the last local source of the directed graph
Definition at line 824 of file vgtl_ldag.h.
out_iterator __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::source_end | ( | ) | [inline, inherited] |
return beyond the last local source of the directed graph
Definition at line 811 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const parents_iterator & | __pr_it, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and one child, and the previous bonds are broken, the node is always new.
Definition at line 2637 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split | ( | const walker & | __parent, | |
const children_iterator & | __ch_it, | |||
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between one parent and many children, and the previous bonds are broken, the node is always new.
Definition at line 2537 of file vgtl_ldag.h.
void ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and many children, and the previous bonds are broken, the node is always new.
Definition at line 2410 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split | ( | const walker & | __parent, | |
const children_iterator & | __ch_it, | |||
const walker & | __child, | |||
const parents_iterator & | __pa_it, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between a parent node and a child node and the previous bonds between them are broken, the node is always new with data __x
.
Definition at line 2289 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split_back | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and one child, and the previous bonds are broken, the node is always new. At the child the new parent is put last.
Definition at line 2664 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split_back | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between one parent and many children, and the previous bonds are broken, the node is always new. At the parent the new child is put last.
Definition at line 2564 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split_back | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
insert the node as the last child between parent and child, with breaking old bonds.
Definition at line 2324 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split_front | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between many parents and one child, and the previous bonds are broken, the node is always new. At the child the new parent is put first.
Definition at line 2692 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split_front | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inline] |
here a new node is inserted between one parent and many children, and the previous bonds are broken, the node is always new. At the parent the new child is put first.
Definition at line 2594 of file vgtl_ldag.h.
walker ldgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::split_front | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inline] |
Here the inserted node is the first child of its parent and first parent of its child. Insert the node and break old bonds.
Definition at line 2355 of file vgtl_ldag.h.
void __LDG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc , _NAlloc, _EAlloc >::swap | ( | _Self & | __x | ) | [inline, inherited] |
swap two DGs
Definition at line 902 of file vgtl_ldag.h.
_LDG_node<_Tp ,_SequenceCtr< void *, _PtrAlloc >::iterator ,_SequenceCtr< void *, _PtrAlloc >::const_iterator >* _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_ground [protected, inherited] |
the virtual ground node (below all roots)
Definition at line 541 of file vgtl_ldagbase.h.
int _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_mark [protected, inherited] |
an internal counter for setting marks during certain algorithms
Definition at line 545 of file vgtl_ldagbase.h.
_LDG_node<_Tp ,_SequenceCtr< void *, _PtrAlloc >::iterator ,_SequenceCtr< void *, _PtrAlloc >::const_iterator >* _LDG_base< _Tp , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc > , _NAlloc , _EAlloc >::_C_sky [protected, inherited] |
the virtual sky node (above all leafs)
Definition at line 543 of file vgtl_ldagbase.h.