#include <vgtl_dagbase.h>
Public Types | |
typedef _Alloc | allocator_type |
typedef _Ctr | container_type |
typedef _Iterator | children_iterator |
typedef _Iterator | parents_iterator |
Public Member Functions | |
allocator_type | get_allocator () const |
_DG_base (const allocator_type &) | |
~_DG_base () | |
void | clear () |
Protected Member Functions | |
void | clear_graph (_DG_node< _Tp, _Ctr, _Iterator > *_node) |
_DG_node< _Tp, _Ctr, _Iterator > * | _C_get_node () |
void | _C_put_node (_DG_node< _Tp, _Ctr, _Iterator > *__p) |
void | clear_children () |
void | clear_parents () |
template<class _Output_Iterator > | |
void | add_all_children (_Output_Iterator fi, _DG_node< _Tp, _Ctr, _Iterator > *_parent) |
template<class _Output_Iterator > | |
void | add_all_parents (_Output_Iterator fi, _DG_node< _Tp, _Ctr, _Iterator > *_child) |
Protected Attributes | |
_DG_node< _Tp, _Ctr, _Iterator > * | _C_ground |
_DG_node< _Tp, _Ctr, _Iterator > * | _C_sky |
int | _C_mark |
Definition at line 349 of file vgtl_dagbase.h.
typedef _Alloc _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::allocator_type |
allocator type
Reimplemented in __DG< _Tp, _Ctr, _Iterator, _CIterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, dag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >, and dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 353 of file vgtl_dagbase.h.
typedef _Iterator _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::children_iterator |
iterator for accessing the children
Reimplemented in __DG< _Tp, _Ctr, _Iterator, _CIterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, dag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >, and dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 360 of file vgtl_dagbase.h.
typedef _Ctr _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::container_type |
internal container used to store the children
Reimplemented in __DG< _Tp, _Ctr, _Iterator, _CIterator, _Inserter, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.
Definition at line 358 of file vgtl_dagbase.h.
typedef _Iterator _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::parents_iterator |
iterator for accessing the parents
Reimplemented in __DG< _Tp, _Ctr, _Iterator, _CIterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, dag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >, and dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Definition at line 363 of file vgtl_dagbase.h.
_DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::_DG_base | ( | const allocator_type & | ) | [inline] |
constructor initializing the allocator and the virtual nodes
Definition at line 367 of file vgtl_dagbase.h.
_DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::~_DG_base | ( | ) | [inline] |
standard destructor
Definition at line 388 of file vgtl_dagbase.h.
_DG_node<_Tp,_Ctr,_Iterator>* _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::_C_get_node | ( | ) | [inline, protected] |
allocate a new node
Definition at line 405 of file vgtl_dagbase.h.
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::_C_put_node | ( | _DG_node< _Tp, _Ctr, _Iterator > * | __p | ) | [inline, protected] |
deallocate a node
Definition at line 408 of file vgtl_dagbase.h.
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::add_all_children | ( | _Output_Iterator | fi, | |
_DG_node< _Tp, _Ctr, _Iterator > * | _parent | |||
) | [inline, protected] |
add all children to the parent _parent
. fi
is a iterator to the children container of the parent
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::add_all_parents | ( | _Output_Iterator | fi, | |
_DG_node< _Tp, _Ctr, _Iterator > * | _child | |||
) | [inline, protected] |
add all parents to the child _child
. fi
is a iterator to the parents container of the child
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::clear | ( | ) |
empty the graph
Reimplemented in __DG< _Tp, _Ctr, _Iterator, _CIterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >, and dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::clear_children | ( | ) | [inline, protected] |
clear all children of the root node
Definition at line 420 of file vgtl_dagbase.h.
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::clear_graph | ( | _DG_node< _Tp, _Ctr, _Iterator > * | _node | ) | [protected] |
removes recursively all nodes downward starting from _node.
void _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::clear_parents | ( | ) | [inline, protected] |
clear all parents of the leaf node
Definition at line 423 of file vgtl_dagbase.h.
allocator_type _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::get_allocator | ( | ) | const [inline] |
get an allocator object
Reimplemented in __DG< _Tp, _Ctr, _Iterator, _CIterator, _Inserter, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::const_iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.
Definition at line 355 of file vgtl_dagbase.h.
_DG_node<_Tp,_Ctr,_Iterator>* _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::_C_ground [protected] |
the virtual ground node (below all roots)
Definition at line 413 of file vgtl_dagbase.h.
int _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::_C_mark [protected] |
an internal counter for setting marks during certain algorithms
Definition at line 417 of file vgtl_dagbase.h.
_DG_node<_Tp,_Ctr,_Iterator>* _DG_base< _Tp, _Ctr, _Iterator, _CIterator, _Alloc >::_C_sky [protected] |
the virtual sky node (above all leafs)
Definition at line 415 of file vgtl_dagbase.h.