1.1 --- a/lemon/topology.h Tue Oct 24 16:49:41 2006 +0000
1.2 +++ b/lemon/topology.h Tue Oct 24 17:19:16 2006 +0000
1.3 @@ -25,8 +25,8 @@
1.4 #include <lemon/graph_adaptor.h>
1.5 #include <lemon/maps.h>
1.6
1.7 -#include <lemon/concept/graph.h>
1.8 -#include <lemon/concept/ugraph.h>
1.9 +#include <lemon/concepts/graph.h>
1.10 +#include <lemon/concepts/ugraph.h>
1.11 #include <lemon/concept_check.h>
1.12
1.13 #include <lemon/bin_heap.h>
1.14 @@ -53,7 +53,7 @@
1.15 /// \note By definition, the empty graph is connected.
1.16 template <typename UGraph>
1.17 bool connected(const UGraph& graph) {
1.18 - checkConcept<concept::UGraph, UGraph>();
1.19 + checkConcept<concepts::UGraph, UGraph>();
1.20 typedef typename UGraph::NodeIt NodeIt;
1.21 if (NodeIt(graph) == INVALID) return true;
1.22 Dfs<UGraph> dfs(graph);
1.23 @@ -78,7 +78,7 @@
1.24 /// of zero connected components.
1.25 template <typename UGraph>
1.26 int countConnectedComponents(const UGraph &graph) {
1.27 - checkConcept<concept::UGraph, UGraph>();
1.28 + checkConcept<concepts::UGraph, UGraph>();
1.29 typedef typename UGraph::Node Node;
1.30 typedef typename UGraph::Edge Edge;
1.31
1.32 @@ -126,10 +126,10 @@
1.33 ///
1.34 template <class UGraph, class NodeMap>
1.35 int connectedComponents(const UGraph &graph, NodeMap &compMap) {
1.36 - checkConcept<concept::UGraph, UGraph>();
1.37 + checkConcept<concepts::UGraph, UGraph>();
1.38 typedef typename UGraph::Node Node;
1.39 typedef typename UGraph::Edge Edge;
1.40 - checkConcept<concept::WriteMap<Node, int>, NodeMap>();
1.41 + checkConcept<concepts::WriteMap<Node, int>, NodeMap>();
1.42
1.43 typedef NullMap<Node, Edge> PredMap;
1.44 typedef NullMap<Node, int> DistMap;
1.45 @@ -244,7 +244,7 @@
1.46 /// \note By definition, the empty graph is strongly connected.
1.47 template <typename Graph>
1.48 bool stronglyConnected(const Graph& graph) {
1.49 - checkConcept<concept::Graph, Graph>();
1.50 + checkConcept<concepts::Graph, Graph>();
1.51
1.52 typedef typename Graph::Node Node;
1.53 typedef typename Graph::NodeIt NodeIt;
1.54 @@ -302,7 +302,7 @@
1.55 /// strongly connected components.
1.56 template <typename Graph>
1.57 int countStronglyConnectedComponents(const Graph& graph) {
1.58 - checkConcept<concept::Graph, Graph>();
1.59 + checkConcept<concepts::Graph, Graph>();
1.60
1.61 using namespace _topology_bits;
1.62
1.63 @@ -371,10 +371,10 @@
1.64 ///
1.65 template <typename Graph, typename NodeMap>
1.66 int stronglyConnectedComponents(const Graph& graph, NodeMap& compMap) {
1.67 - checkConcept<concept::Graph, Graph>();
1.68 + checkConcept<concepts::Graph, Graph>();
1.69 typedef typename Graph::Node Node;
1.70 typedef typename Graph::NodeIt NodeIt;
1.71 - checkConcept<concept::WriteMap<Node, int>, NodeMap>();
1.72 + checkConcept<concepts::WriteMap<Node, int>, NodeMap>();
1.73
1.74 using namespace _topology_bits;
1.75
1.76 @@ -434,11 +434,11 @@
1.77 /// \return The number of cut edges
1.78 template <typename Graph, typename EdgeMap>
1.79 int stronglyConnectedCutEdges(const Graph& graph, EdgeMap& cutMap) {
1.80 - checkConcept<concept::Graph, Graph>();
1.81 + checkConcept<concepts::Graph, Graph>();
1.82 typedef typename Graph::Node Node;
1.83 typedef typename Graph::Edge Edge;
1.84 typedef typename Graph::NodeIt NodeIt;
1.85 - checkConcept<concept::WriteMap<Edge, bool>, EdgeMap>();
1.86 + checkConcept<concepts::WriteMap<Edge, bool>, EdgeMap>();
1.87
1.88 using namespace _topology_bits;
1.89
1.90 @@ -730,7 +730,7 @@
1.91 /// \return The number of components.
1.92 template <typename UGraph>
1.93 int countBiNodeConnectedComponents(const UGraph& graph) {
1.94 - checkConcept<concept::UGraph, UGraph>();
1.95 + checkConcept<concepts::UGraph, UGraph>();
1.96 typedef typename UGraph::NodeIt NodeIt;
1.97
1.98 using namespace _topology_bits;
1.99 @@ -774,10 +774,10 @@
1.100 template <typename UGraph, typename UEdgeMap>
1.101 int biNodeConnectedComponents(const UGraph& graph,
1.102 UEdgeMap& compMap) {
1.103 - checkConcept<concept::UGraph, UGraph>();
1.104 + checkConcept<concepts::UGraph, UGraph>();
1.105 typedef typename UGraph::NodeIt NodeIt;
1.106 typedef typename UGraph::UEdge UEdge;
1.107 - checkConcept<concept::WriteMap<UEdge, int>, UEdgeMap>();
1.108 + checkConcept<concepts::WriteMap<UEdge, int>, UEdgeMap>();
1.109
1.110 using namespace _topology_bits;
1.111
1.112 @@ -814,10 +814,10 @@
1.113 /// \return The number of the cut nodes.
1.114 template <typename UGraph, typename NodeMap>
1.115 int biNodeConnectedCutNodes(const UGraph& graph, NodeMap& cutMap) {
1.116 - checkConcept<concept::UGraph, UGraph>();
1.117 + checkConcept<concepts::UGraph, UGraph>();
1.118 typedef typename UGraph::Node Node;
1.119 typedef typename UGraph::NodeIt NodeIt;
1.120 - checkConcept<concept::WriteMap<Node, bool>, NodeMap>();
1.121 + checkConcept<concepts::WriteMap<Node, bool>, NodeMap>();
1.122
1.123 using namespace _topology_bits;
1.124
1.125 @@ -1057,7 +1057,7 @@
1.126 /// \return The number of components.
1.127 template <typename UGraph>
1.128 int countBiEdgeConnectedComponents(const UGraph& graph) {
1.129 - checkConcept<concept::UGraph, UGraph>();
1.130 + checkConcept<concepts::UGraph, UGraph>();
1.131 typedef typename UGraph::NodeIt NodeIt;
1.132
1.133 using namespace _topology_bits;
1.134 @@ -1100,10 +1100,10 @@
1.135 ///
1.136 template <typename UGraph, typename NodeMap>
1.137 int biEdgeConnectedComponents(const UGraph& graph, NodeMap& compMap) {
1.138 - checkConcept<concept::UGraph, UGraph>();
1.139 + checkConcept<concepts::UGraph, UGraph>();
1.140 typedef typename UGraph::NodeIt NodeIt;
1.141 typedef typename UGraph::Node Node;
1.142 - checkConcept<concept::WriteMap<Node, int>, NodeMap>();
1.143 + checkConcept<concepts::WriteMap<Node, int>, NodeMap>();
1.144
1.145 using namespace _topology_bits;
1.146
1.147 @@ -1141,10 +1141,10 @@
1.148 /// \return The number of cut edges.
1.149 template <typename UGraph, typename UEdgeMap>
1.150 int biEdgeConnectedCutEdges(const UGraph& graph, UEdgeMap& cutMap) {
1.151 - checkConcept<concept::UGraph, UGraph>();
1.152 + checkConcept<concepts::UGraph, UGraph>();
1.153 typedef typename UGraph::NodeIt NodeIt;
1.154 typedef typename UGraph::UEdge UEdge;
1.155 - checkConcept<concept::WriteMap<UEdge, bool>, UEdgeMap>();
1.156 + checkConcept<concepts::WriteMap<UEdge, bool>, UEdgeMap>();
1.157
1.158 using namespace _topology_bits;
1.159
1.160 @@ -1205,8 +1205,8 @@
1.161 void topologicalSort(const Graph& graph, NodeMap& order) {
1.162 using namespace _topology_bits;
1.163
1.164 - checkConcept<concept::Graph, Graph>();
1.165 - checkConcept<concept::WriteMap<typename Graph::Node, int>, NodeMap>();
1.166 + checkConcept<concepts::Graph, Graph>();
1.167 + checkConcept<concepts::WriteMap<typename Graph::Node, int>, NodeMap>();
1.168
1.169 typedef typename Graph::Node Node;
1.170 typedef typename Graph::NodeIt NodeIt;
1.171 @@ -1247,8 +1247,8 @@
1.172 bool checkedTopologicalSort(const Graph& graph, NodeMap& order) {
1.173 using namespace _topology_bits;
1.174
1.175 - checkConcept<concept::Graph, Graph>();
1.176 - checkConcept<concept::ReadWriteMap<typename Graph::Node, int>, NodeMap>();
1.177 + checkConcept<concepts::Graph, Graph>();
1.178 + checkConcept<concepts::ReadWriteMap<typename Graph::Node, int>, NodeMap>();
1.179
1.180 typedef typename Graph::Node Node;
1.181 typedef typename Graph::NodeIt NodeIt;
1.182 @@ -1290,7 +1290,7 @@
1.183 template <typename Graph>
1.184 bool dag(const Graph& graph) {
1.185
1.186 - checkConcept<concept::Graph, Graph>();
1.187 + checkConcept<concepts::Graph, Graph>();
1.188
1.189 typedef typename Graph::Node Node;
1.190 typedef typename Graph::NodeIt NodeIt;
1.191 @@ -1331,7 +1331,7 @@
1.192 /// \see dag
1.193 template <typename UGraph>
1.194 bool acyclic(const UGraph& graph) {
1.195 - checkConcept<concept::UGraph, UGraph>();
1.196 + checkConcept<concepts::UGraph, UGraph>();
1.197 typedef typename UGraph::Node Node;
1.198 typedef typename UGraph::NodeIt NodeIt;
1.199 typedef typename UGraph::Edge Edge;
1.200 @@ -1364,7 +1364,7 @@
1.201 /// \return %True when the graph is acyclic and connected.
1.202 template <typename UGraph>
1.203 bool tree(const UGraph& graph) {
1.204 - checkConcept<concept::UGraph, UGraph>();
1.205 + checkConcept<concepts::UGraph, UGraph>();
1.206 typedef typename UGraph::Node Node;
1.207 typedef typename UGraph::NodeIt NodeIt;
1.208 typedef typename UGraph::Edge Edge;
1.209 @@ -1402,7 +1402,7 @@
1.210 /// \author Balazs Attila Mihaly
1.211 template<typename UGraph>
1.212 inline bool bipartite(const UGraph &graph){
1.213 - checkConcept<concept::UGraph, UGraph>();
1.214 + checkConcept<concepts::UGraph, UGraph>();
1.215
1.216 typedef typename UGraph::NodeIt NodeIt;
1.217 typedef typename UGraph::EdgeIt EdgeIt;
1.218 @@ -1439,7 +1439,7 @@
1.219 /// \image latex bipartite_partitions.eps "Bipartite partititions" width=\textwidth
1.220 template<typename UGraph, typename NodeMap>
1.221 inline bool bipartitePartitions(const UGraph &graph, NodeMap &partMap){
1.222 - checkConcept<concept::UGraph, UGraph>();
1.223 + checkConcept<concepts::UGraph, UGraph>();
1.224
1.225 typedef typename UGraph::Node Node;
1.226 typedef typename UGraph::NodeIt NodeIt;