-static bool
-is_feedback (boost::shared_ptr<RouteList> routelist, Route* from, boost::shared_ptr<Route> to)
-{
- for (RouteList::iterator ri=routelist->begin(); ri!=routelist->end(); ri++) {
- if ((*ri).get() == from) {
- return false;
- }
- if ((*ri) == to) {
- return true;
- }
- }
-
- return false;
-}
-
-static bool
-is_feedback (boost::shared_ptr<RouteList> routelist, boost::shared_ptr<Route> from, Route* to)
-{
- for (RouteList::iterator ri=routelist->begin(); ri!=routelist->end(); ri++) {
- if ((*ri).get() == to) {
- return true;
- }
- if ((*ri) == from) {
- return false;
- }
- }
-
- return false;
-}
+/** Rechain our stuff using a list of routes (which can be in any order) and
+ * a directed graph of their interconnections, which is guaranteed to be
+ * acyclic.
+ */