lemon/bits/graph_extender.h
changeset 2616 02971275e7bf
parent 2553 bfced05fa852
equal deleted inserted replaced
31:dd3e600dc906 32:b33c09ce4eea
    18 
    18 
    19 #ifndef LEMON_BITS_GRAPH_EXTENDER_H
    19 #ifndef LEMON_BITS_GRAPH_EXTENDER_H
    20 #define LEMON_BITS_GRAPH_EXTENDER_H
    20 #define LEMON_BITS_GRAPH_EXTENDER_H
    21 
    21 
    22 #include <lemon/bits/invalid.h>
    22 #include <lemon/bits/invalid.h>
       
    23 #include <lemon/bits/utility.h>
    23 #include <lemon/error.h>
    24 #include <lemon/error.h>
    24 
    25 
    25 #include <lemon/bits/map_extender.h>
    26 #include <lemon/bits/map_extender.h>
    26 #include <lemon/bits/default_map.h>
    27 #include <lemon/bits/default_map.h>
    27 
    28 
   328   ///
   329   ///
   329   /// \brief Extender for the UGraphs
   330   /// \brief Extender for the UGraphs
   330   template <typename Base> 
   331   template <typename Base> 
   331   class UGraphExtender : public Base {
   332   class UGraphExtender : public Base {
   332   public:
   333   public:
   333     
   334 
   334     typedef Base Parent;
   335     typedef Base Parent;
   335     typedef UGraphExtender Graph;
   336     typedef UGraphExtender Graph;
       
   337 
       
   338     typedef True UndirectedTag;
   336 
   339 
   337     typedef typename Parent::Node Node;
   340     typedef typename Parent::Node Node;
   338     typedef typename Parent::Edge Edge;
   341     typedef typename Parent::Edge Edge;
   339     typedef typename Parent::UEdge UEdge;
   342     typedef typename Parent::UEdge UEdge;
   340 
   343 
   750   class BpUGraphExtender : public Base {
   753   class BpUGraphExtender : public Base {
   751   public:
   754   public:
   752 
   755 
   753     typedef Base Parent;
   756     typedef Base Parent;
   754     typedef BpUGraphExtender Graph;
   757     typedef BpUGraphExtender Graph;
       
   758 
       
   759     typedef True UndirectedTag;
   755 
   760 
   756     typedef typename Parent::Node Node;
   761     typedef typename Parent::Node Node;
   757     typedef typename Parent::ANode ANode;
   762     typedef typename Parent::ANode ANode;
   758     typedef typename Parent::BNode BNode;
   763     typedef typename Parent::BNode BNode;
   759     typedef typename Parent::Edge Edge;
   764     typedef typename Parent::Edge Edge;