src/work/johanna/contract_wrapper.h
author klao
Sun, 20 Feb 2005 01:02:07 +0000
changeset 1158 29961fa390a3
parent 394 3a34c5626e52
permissions -rw-r--r--
Graph and UndirGraph concept modifications.

* For incidence iterators ({In,Out,Inc}EdgeIt) there is now baseNode and
runningNode functions in graph interface
* For Edge in undir graphs: Edge(UndirGraph const &, UndirEdge, Node)
constructor. Same for IncEdgeIt
* Edge(UndirEdge, bool) constructor is no more in the public interface. (But we
need it in the developpers interface).
     1 // -*- C++ -*- //
     2 
     3 #ifndef LEMON_CONTRACT_WRAPPER
     4 #define LEMON_CONTRACT_WRAPPER
     5 
     6 #include <graph_wrapper.h>
     7 
     8 namespace lemon {
     9 
    10   template<typename Graph>
    11   class ConractWrapper : public GraphWrapper<const Graph> {
    12 
    13   public:
    14     typedef typename Parent::NodeMap NodeMap;
    15     class Node;
    16 
    17   private:
    18     typedef GraphWrapper<Graph> Parent;
    19     
    20 
    21     UnionFindEnum<Node, NodeMap> parts; 
    22  
    23   public:
    24 
    25     ConractWrapper(const Graph& _graph) : Parent(_graph) { }
    26 
    27 
    28 
    29 
    30 
    31   };
    32 
    33 
    34 
    35 }
    36 #endif