Undir list and smart graph
authorklao
Thu, 09 Dec 2004 15:30:12 +0000
changeset 1034be6ee857b72d
parent 1033 9fff45a59e92
child 1035 f2a3426e64e6
Undir list and smart graph
src/lemon/list_graph.h
src/lemon/smart_graph.h
src/test/undir_graph_test.cc
     1.1 --- a/src/lemon/list_graph.h	Thu Dec 09 10:45:32 2004 +0000
     1.2 +++ b/src/lemon/list_graph.h	Thu Dec 09 15:30:12 2004 +0000
     1.3 @@ -24,12 +24,11 @@
     1.4  #include <lemon/erasable_graph_extender.h>
     1.5  #include <lemon/clearable_graph_extender.h>
     1.6  #include <lemon/extendable_graph_extender.h>
     1.7 +#include <lemon/iterable_graph_extender.h>
     1.8 +#include <lemon/alteration_observer_registry.h>
     1.9 +#include <lemon/default_map.h>
    1.10  
    1.11 -#include <lemon/iterable_graph_extender.h>
    1.12 -
    1.13 -#include <lemon/alteration_observer_registry.h>
    1.14 -
    1.15 -#include <lemon/default_map.h>
    1.16 +#include <lemon/undir_graph_extender.h>
    1.17  
    1.18  #include <list>
    1.19  
    1.20 @@ -501,6 +500,21 @@
    1.21      };
    1.22      
    1.23    };
    1.24 +
    1.25 +
    1.26 +  /**************** Undirected List Graph ****************/
    1.27 +
    1.28 +  typedef ErasableUndirGraphExtender<
    1.29 +    ClearableUndirGraphExtender<
    1.30 +    ExtendableUndirGraphExtender<
    1.31 +    MappableUndirGraphExtender<
    1.32 +    IterableUndirGraphExtender<
    1.33 +    AlterableUndirGraphExtender<
    1.34 +    UndirGraphExtender<ListGraphBase> > > > > > > ErasableUndirListGraphBase;
    1.35 +
    1.36 +  class UndirListGraph : public ErasableUndirListGraphBase {
    1.37 +  };
    1.38 +
    1.39    
    1.40    /// @}  
    1.41  } //namespace lemon
     2.1 --- a/src/lemon/smart_graph.h	Thu Dec 09 10:45:32 2004 +0000
     2.2 +++ b/src/lemon/smart_graph.h	Thu Dec 09 15:30:12 2004 +0000
     2.3 @@ -31,6 +31,8 @@
     2.4  #include <lemon/alteration_observer_registry.h>
     2.5  #include <lemon/default_map.h>
     2.6  
     2.7 +#include <lemon/undir_graph_extender.h>
     2.8 +
     2.9  #include <lemon/utility.h>
    2.10  
    2.11  namespace lemon {
    2.12 @@ -345,6 +347,20 @@
    2.13        }
    2.14      };
    2.15    };
    2.16 +
    2.17 +
    2.18 +  /**************** Undirected List Graph ****************/
    2.19 +
    2.20 +  typedef ClearableUndirGraphExtender<
    2.21 +    ExtendableUndirGraphExtender<
    2.22 +    MappableUndirGraphExtender<
    2.23 +    IterableUndirGraphExtender<
    2.24 +    AlterableUndirGraphExtender<
    2.25 +    UndirGraphExtender<SmartGraphBase> > > > > > UndirSmartGraphBase;
    2.26 +
    2.27 +  class UndirSmartGraph : public UndirSmartGraphBase {
    2.28 +  };
    2.29 +
    2.30    
    2.31    /// @}  
    2.32  } //namespace lemon
     3.1 --- a/src/test/undir_graph_test.cc	Thu Dec 09 10:45:32 2004 +0000
     3.2 +++ b/src/test/undir_graph_test.cc	Thu Dec 09 15:30:12 2004 +0000
     3.3 @@ -33,6 +33,12 @@
     3.4    checkConcept<UndirGraph, Graph>();
     3.5    checkConcept<ErasableUndirGraph, Graph>();
     3.6  
     3.7 +  checkConcept<UndirGraph, UndirListGraph>();
     3.8 +  checkConcept<ErasableUndirGraph, UndirListGraph>();
     3.9 +
    3.10 +  checkConcept<UndirGraph, UndirSmartGraph>();
    3.11 +  checkConcept<ExtendableUndirGraph, UndirSmartGraph>();
    3.12 +
    3.13    checkConcept<UndirGraph, UndirGraph>();
    3.14  
    3.15    return 0;