Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

_DG_base< _Tp, _Ctr, _Iterator, _Alloc > Class Template Reference
[Classes and types for internal use]

Directed graph base class for allocator encapsulation. More...

#include <vgtl_dagbase.h>

Inheritance diagram for _DG_base< _Tp, _Ctr, _Iterator, _Alloc >:

Inheritance graph
[legend]
Collaboration diagram for _DG_base< _Tp, _Ctr, _Iterator, _Alloc >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef _Base::allocator_type allocator_type
typedef _Ctr container_type
typedef _Iterator children_iterator
typedef _Iterator parents_iterator

Public Methods

 _DG_base (const allocator_type &__a)
 ~_DG_base ()
void clear ()
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 Methods

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)

Protected Attributes

_DG_node< _Tp, _Ctr, _Iterator > * _C_ground
_DG_node< _Tp, _Ctr, _Iterator > * _C_sky
int _C_mark

Detailed Description

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
class _DG_base< _Tp, _Ctr, _Iterator, _Alloc >

Base directed graph class top level that encapsulates details of allocators.

Definition at line 260 of file vgtl_dagbase.h.


Member Typedef Documentation

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
typedef _Base::allocator_type _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::allocator_type
 

allocator type

Reimplemented from _DG_alloc_base< _Tp, _Ctr, _Iterator, _Alloc, std::_Alloc_traits< _Tp, _Alloc >::_S_instanceless >.

Reimplemented in __DG< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, dag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.

Definition at line 269 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
typedef _Iterator _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::children_iterator
 

iterator for accessing the children

Reimplemented in __DG< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, dag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.

Definition at line 274 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
typedef _Ctr _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::container_type
 

internal container used to store the children and parents

Reimplemented in __DG< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.

Definition at line 272 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
typedef _Iterator _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::parents_iterator
 

iterator for accessing the parents

Reimplemented in __DG< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, dag< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.

Definition at line 276 of file vgtl_dagbase.h.


Constructor & Destructor Documentation

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
_DG_base< _Tp, _Ctr, _Iterator, _Alloc >::_DG_base const allocator_type   __a [inline]
 

constructor initializing the allocator and the root

Definition at line 280 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
_DG_base< _Tp, _Ctr, _Iterator, _Alloc >::~_DG_base   [inline]
 

standard destructor

Definition at line 300 of file vgtl_dagbase.h.


Member Function Documentation

_DG_node<_Tp,_Ctr,_Iterator>* _DG_alloc_base< _Tp, _Ctr, _Iterator, _Alloc, _IsStatic >::_C_get_node   [inline, protected, inherited]
 

allocates the memory of one node

Definition at line 194 of file vgtl_dagbase.h.

void _DG_alloc_base< _Tp, _Ctr, _Iterator, _Alloc, _IsStatic >::_C_put_node _DG_node< _Tp, _Ctr, _Iterator > *    __p [inline, protected, inherited]
 

de-allocates the memory of one node

Definition at line 197 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
template<class _Output_Iterator>
void _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::add_all_children _Output_Iterator    fi,
_DG_node< _Tp, _Ctr, _Iterator > *    _parent
[inline]
 

add all children to the parent _parent. fi is a iterator to the children container of the parent

Definition at line 459 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
template<class _Output_Iterator>
void _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::add_all_parents _Output_Iterator    fi,
_DG_node< _Tp, _Ctr, _Iterator > *    _child
[inline]
 

add all parents to the child _child. fi is a iterator to the container of the child

Definition at line 466 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
void _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::clear  
 

empty the tree

Reimplemented in __DG< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >, dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >, and __DG< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.

Definition at line 472 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
void _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::clear_children   [inline]
 

clear all children of the ground node

Definition at line 314 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
void _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::clear_graph _DG_node< _Tp, _Ctr, _Iterator > *    _node [protected]
 

removes all the nodes of the graph except the sky and ground nodes

Definition at line 430 of file vgtl_dagbase.h.

template<class _Tp, class _Ctr, class _Iterator, class _Alloc>
void _DG_base< _Tp, _Ctr, _Iterator, _Alloc >::clear_parents   [inline]
 

clear all parents of the sky node

Definition at line 317 of file vgtl_dagbase.h.


Member Data Documentation

_DG_node<_Tp,_Ctr,_Iterator>* _DG_alloc_base< _Tp, _Ctr, _Iterator, _Alloc, _IsStatic >::_C_ground [protected, inherited]
 

the virtual ground node (below all roots)

Definition at line 206 of file vgtl_dagbase.h.

int _DG_alloc_base< _Tp, _Ctr, _Iterator, _Alloc, _IsStatic >::_C_mark [protected, inherited]
 

internal counter for various algorithms

Definition at line 210 of file vgtl_dagbase.h.

_DG_node<_Tp,_Ctr,_Iterator>* _DG_alloc_base< _Tp, _Ctr, _Iterator, _Alloc, _IsStatic >::_C_sky [protected, inherited]
 

the virtual sky node (above all leaves)

Definition at line 208 of file vgtl_dagbase.h.


The documentation for this class was generated from the following file:
Generated on Tue Nov 4 01:41:35 2003 for Vienna Graph Template Library by doxygen1.2.18