Dune::Amg::PropertiesGraph< G, VP, EP, VM, EM > Class Template Reference
[Parallel Algebraic Multigrid]

#include <graph.hh>

List of all members.


Detailed Description

template<class G, class VP, class EP, class VM = IdentityMap, class EM = IdentityMap>
class Dune::Amg::PropertiesGraph< G, VP, EP, VM, EM >

Attaches properties to the edges and vertices of a graph.

Public Types

typedef G Graph
 The graph we attach properties to.
typedef Graph::VertexDescriptor VertexDescriptor
 The vertex descriptor.
typedef Graph::EdgeDescriptor EdgeDescriptor
 The edge descritor.
typedef VP VertexProperties
 The type of the properties of the vertices.
typedef VM VertexMap
 The type of the map for converting the VertexDescriptor to std::size_t.
typedef EP EdgeProperties
 The type of the properties of the edges;.
typedef EM EdgeMap
 The type of the map for converting the EdgeDescriptor to std::size_t.
typedef EdgeIteratorT
< PropertiesGraph< Graph,
VertexProperties,
EdgeProperties, VM, EM > > 
EdgeIterator
 The type of the mutable edge iterator.
typedef EdgeIteratorT< const
PropertiesGraph< Graph,
VertexProperties,
EdgeProperties, VM, EM > > 
ConstEdgeIterator
 The type of the constant edge iterator.
typedef VertexIteratorT
< PropertiesGraph< Graph,
VertexProperties,
EdgeProperties, VM, EM > > 
VertexIterator
 The type of the mutable Vertex iterator.
typedef VertexIteratorT< const
PropertiesGraph< Graph,
VertexProperties,
EdgeProperties, VM, EM > > 
ConstVertexIterator
 The type of the constant Vertex iterator.

Public Member Functions

EdgeIterator beginEdges (const VertexDescriptor &source)
 Get the mutable edge iterator over edges starting at a vertex.
EdgeIterator endEdges (const VertexDescriptor &source)
 Get the mutable edge iterator over edges starting at a vertex.
ConstEdgeIterator beginEdges (const VertexDescriptor &source) const
 Get the mutable edge iterator over edges starting at a vertex.
ConstEdgeIterator endEdges (const VertexDescriptor &source) const
 Get the mutable edge iterator over edges starting at a vertex.
VertexIterator begin ()
 Get an iterator over the vertices.
VertexIterator end ()
 Get an iterator over the vertices.
ConstVertexIterator begin () const
 Get an iterator over the vertices.
ConstVertexIterator end () const
 Get an iterator over the vertices.
VertexPropertiesgetVertexProperties (const VertexDescriptor &vertex)
 Get the properties associated with a vertex.
const VertexPropertiesgetVertexProperties (const VertexDescriptor &vertex) const
 Get the properties associated with a vertex.
EdgePropertiesgetEdgeProperties (const EdgeDescriptor &edge)
 Get the properties associated with a edge.
const EdgePropertiesgetEdgeProperties (const EdgeDescriptor &edge) const
 Get the properties associated with a edge.
EdgePropertiesgetEdgeProperties (const VertexDescriptor &source, const VertexDescriptor &target)
 Get the properties associated with a edge.
const EdgePropertiesgetEdgeProperties (const VertexDescriptor &source, const VertexDescriptor &target) const
 Get the properties associated with a edge.
const Graphgraph () const
 Get the graph the properties are attached to.
int noVertices () const
 Get the number of vertices in the graph.
VertexDescriptor maxVertex () const
 Get the maximal vertex descriptor.
 PropertiesGraph (Graph &graph, const VertexMap &vmap=VertexMap(), const EdgeMap &emap=EdgeMap())
 Constructor.

Member Typedef Documentation

template<class G, class VP, class EP, class VM = IdentityMap, class EM = IdentityMap>
typedef VM Dune::Amg::PropertiesGraph< G, VP, EP, VM, EM >::VertexMap

The type of the map for converting the VertexDescriptor to std::size_t.

Has to provide the following method: std::size_t operator[](const VertexDescriptor& vertex)

The following condition has to be met: Let v1 and v2 be two vertex descriptors with v1 < v2 and map be the index map. Then map[v1]<map[v2] has to hold.

template<class G, class VP, class EP, class VM = IdentityMap, class EM = IdentityMap>
typedef EM Dune::Amg::PropertiesGraph< G, VP, EP, VM, EM >::EdgeMap

The type of the map for converting the EdgeDescriptor to std::size_t.

Has to provide the following method: std::size_t operator[](const EdgeDescriptor& vertex)

The following condition has to be met: Let e1 and e2 be two edge descriptors, e1 < e2, and map be the index map. Then map[v1]<map[v2] has to hold.


The documentation for this class was generated from the following file:

Generated on Tue Jul 28 22:29:24 2009 for dune-istl by  doxygen 1.5.6