diff -r d276e88aa48a -r 15fb7a4ea6be lemon/sub_graph.h --- a/lemon/sub_graph.h Wed Mar 01 10:04:47 2006 +0000 +++ b/lemon/sub_graph.h Wed Mar 01 10:17:25 2006 +0000 @@ -20,6 +20,8 @@ #define LEMON_SUB_GRAPH_H #include +#include +#include namespace lemon { @@ -242,10 +244,10 @@ Node prev, next; Edge firstIn, firstOut; }; - class NodesImpl : public Graph::template NodeMap { + class NodesImpl : public DefaultMap { friend class SubGraphBase; public: - typedef typename Graph::template NodeMap Parent; + typedef DefaultMap Parent; NodesImpl(SubGraph& _adaptor, const Graph& _graph) : Parent(_graph), adaptor(_adaptor) {} @@ -305,10 +307,10 @@ Edge prevOut, nextOut; Edge prevIn, nextIn; }; - class EdgesImpl : public Graph::template EdgeMap { + class EdgesImpl : public DefaultMap { friend class SubGraphBase; public: - typedef typename Graph::template EdgeMap Parent; + typedef DefaultMap Parent; EdgesImpl(SubGraph& _adaptor, const Graph& _graph) : Parent(_graph), adaptor(_adaptor) {} @@ -560,10 +562,10 @@ struct NodeT { Edge firstIn, firstOut; }; - class NodesImpl : public Graph::template NodeMap { + class NodesImpl : public DefaultMap { friend class EdgeSubGraphBase; public: - typedef typename Graph::template NodeMap Parent; + typedef DefaultMap Parent; NodesImpl(SubGraph& _adaptor, const Graph& _graph) : Parent(_graph), adaptor(_adaptor) {} @@ -603,10 +605,10 @@ Edge prevOut, nextOut; Edge prevIn, nextIn; }; - class EdgesImpl : public Graph::template EdgeMap { + class EdgesImpl : public DefaultMap { friend class EdgeSubGraphBase; public: - typedef typename Graph::template EdgeMap Parent; + typedef DefaultMap Parent; EdgesImpl(SubGraph& _adaptor, const Graph& _graph) : Parent(_graph), adaptor(_adaptor) {}