# HG changeset patch # User Peter Kovacs # Date 1225831006 -3600 # Node ID 75cf49ce539059c67130b03592325fcbd5e4f96c # Parent 3fb8ed1322de7eb738605582ff668a1ba0120d62 Add missing tags and indicators diff -r 3fb8ed1322de -r 75cf49ce5390 lemon/bits/traits.h --- a/lemon/bits/traits.h Tue Nov 04 10:25:47 2008 +0000 +++ b/lemon/bits/traits.h Tue Nov 04 21:36:46 2008 +0100 @@ -218,6 +218,19 @@ }; template + struct ArcNumTagIndicator { + static const bool value = false; + }; + + template + struct ArcNumTagIndicator< + Graph, + typename enable_if::type + > { + static const bool value = true; + }; + + template struct EdgeNumTagIndicator { static const bool value = false; }; @@ -231,6 +244,19 @@ }; template + struct FindArcTagIndicator { + static const bool value = false; + }; + + template + struct FindArcTagIndicator< + Graph, + typename enable_if::type + > { + static const bool value = true; + }; + + template struct FindEdgeTagIndicator { static const bool value = false; }; diff -r 3fb8ed1322de -r 75cf49ce5390 lemon/full_graph.h --- a/lemon/full_graph.h Tue Nov 04 10:25:47 2008 +0000 +++ b/lemon/full_graph.h Tue Nov 04 21:36:46 2008 +0100 @@ -306,6 +306,7 @@ } typedef True NodeNumTag; + typedef True ArcNumTag; typedef True EdgeNumTag; int nodeNum() const { return _node_num; } @@ -343,6 +344,7 @@ } typedef True FindEdgeTag; + typedef True FindArcTag; Edge findEdge(Node u, Node v, Edge prev = INVALID) const { return prev != INVALID ? INVALID : edge(u, v); diff -r 3fb8ed1322de -r 75cf49ce5390 lemon/grid_graph.h --- a/lemon/grid_graph.h Tue Nov 04 10:25:47 2008 +0000 +++ b/lemon/grid_graph.h Tue Nov 04 21:36:46 2008 +0100 @@ -82,6 +82,7 @@ } typedef True NodeNumTag; + typedef True EdgeNumTag; typedef True ArcNumTag; int nodeNum() const { return _node_num; } @@ -127,6 +128,7 @@ static Arc arcFromId(int id) { return Arc(id);} typedef True FindEdgeTag; + typedef True FindArcTag; Edge findEdge(Node u, Node v, Edge prev = INVALID) const { if (prev != INVALID) return INVALID; diff -r 3fb8ed1322de -r 75cf49ce5390 lemon/smart_graph.h --- a/lemon/smart_graph.h Tue Nov 04 10:25:47 2008 +0000 +++ b/lemon/smart_graph.h Tue Nov 04 21:36:46 2008 +0100 @@ -67,7 +67,7 @@ : nodes(_g.nodes), arcs(_g.arcs) { } typedef True NodeNumTag; - typedef True EdgeNumTag; + typedef True ArcNumTag; int nodeNum() const { return nodes.size(); } int arcNum() const { return arcs.size(); }