src/work/johanna/contract_wrapper.h
author alpar
Wed, 29 Sep 2004 15:30:04 +0000
changeset 921 818510fa3d99
parent 394 3a34c5626e52
permissions -rw-r--r--
hugo -> lemon
beckerjc@394
     1
// -*- C++ -*- //
beckerjc@394
     2
alpar@921
     3
#ifndef LEMON_CONTRACT_WRAPPER
alpar@921
     4
#define LEMON_CONTRACT_WRAPPER
beckerjc@394
     5
beckerjc@394
     6
#include <graph_wrapper.h>
beckerjc@394
     7
alpar@921
     8
namespace lemon {
beckerjc@394
     9
beckerjc@394
    10
  template<typename Graph>
beckerjc@394
    11
  class ConractWrapper : public GraphWrapper<const Graph> {
beckerjc@394
    12
beckerjc@394
    13
  public:
beckerjc@394
    14
    typedef typename Parent::NodeMap NodeMap;
beckerjc@394
    15
    class Node;
beckerjc@394
    16
beckerjc@394
    17
  private:
beckerjc@394
    18
    typedef GraphWrapper<Graph> Parent;
beckerjc@394
    19
    
beckerjc@394
    20
beckerjc@394
    21
    UnionFindEnum<Node, NodeMap> parts; 
beckerjc@394
    22
 
beckerjc@394
    23
  public:
beckerjc@394
    24
beckerjc@394
    25
    ConractWrapper(const Graph& _graph) : Parent(_graph) { }
beckerjc@394
    26
beckerjc@394
    27
beckerjc@394
    28
beckerjc@394
    29
beckerjc@394
    30
beckerjc@394
    31
  };
beckerjc@394
    32
beckerjc@394
    33
beckerjc@394
    34
beckerjc@394
    35
}
beckerjc@394
    36
#endif