Changeset 448:9d9990909fc8 in lemon-main
- Timestamp:
- 12/12/08 22:18:41 (16 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/adaptors.h
r447 r448 75 75 76 76 typedef FindArcTagIndicator<Digraph> FindArcTag; 77 Arc findArc(const Node& u, const Node& v, const Arc& prev = INVALID) {77 Arc findArc(const Node& u, const Node& v, const Arc& prev = INVALID) const { 78 78 return _digraph->findArc(u, v, prev); 79 79 } … … 82 82 Arc addArc(const Node& u, const Node& v) { return _digraph->addArc(u, v); } 83 83 84 void erase(const Node& n) const{ _digraph->erase(n); }85 void erase(const Arc& a) const{ _digraph->erase(a); }86 87 void clear() const{ _digraph->clear(); }84 void erase(const Node& n) { _digraph->erase(n); } 85 void erase(const Arc& a) { _digraph->erase(a); } 86 87 void clear() { _digraph->clear(); } 88 88 89 89 int id(const Node& n) const { return _digraph->id(n); } … … 206 206 207 207 typedef FindArcTagIndicator<Graph> FindArcTag; 208 Arc findArc(const Node& u, const Node& v, const Arc& prev = INVALID) { 208 Arc findArc(const Node& u, const Node& v, 209 const Arc& prev = INVALID) const { 209 210 return _graph->findArc(u, v, prev); 210 211 } 211 212 212 213 typedef FindEdgeTagIndicator<Graph> FindEdgeTag; 213 Edge findEdge(const Node& u, const Node& v, const Edge& prev = INVALID) { 214 Edge findEdge(const Node& u, const Node& v, 215 const Edge& prev = INVALID) const { 214 216 return _graph->findEdge(u, v, prev); 215 217 } … … 337 339 typedef FindArcTagIndicator<Digraph> FindArcTag; 338 340 Arc findArc(const Node& u, const Node& v, 339 const Arc& prev = INVALID) {341 const Arc& prev = INVALID) const { 340 342 return Parent::findArc(v, u, prev); 341 343 } … … 476 478 typedef FindArcTagIndicator<Digraph> FindArcTag; 477 479 Arc findArc(const Node& source, const Node& target, 478 const Arc& prev = INVALID) {480 const Arc& prev = INVALID) const { 479 481 if (!(*_node_filter)[source] || !(*_node_filter)[target]) { 480 482 return INVALID; … … 619 621 typedef FindArcTagIndicator<Digraph> FindArcTag; 620 622 Arc findArc(const Node& source, const Node& target, 621 const Arc& prev = INVALID) {623 const Arc& prev = INVALID) const { 622 624 if (!(*_node_filter)[source] || !(*_node_filter)[target]) { 623 625 return INVALID; … … 945 947 typedef FindArcTagIndicator<Graph> FindArcTag; 946 948 Arc findArc(const Node& u, const Node& v, 947 const Arc& prev = INVALID) {949 const Arc& prev = INVALID) const { 948 950 if (!(*_node_filter_map)[u] || !(*_node_filter_map)[v]) { 949 951 return INVALID; … … 958 960 typedef FindEdgeTagIndicator<Graph> FindEdgeTag; 959 961 Edge findEdge(const Node& u, const Node& v, 960 const Edge& prev = INVALID) {962 const Edge& prev = INVALID) const { 961 963 if (!(*_node_filter_map)[u] || !(*_node_filter_map)[v]) { 962 964 return INVALID; … … 1144 1146 typedef FindArcTagIndicator<Graph> FindArcTag; 1145 1147 Arc findArc(const Node& u, const Node& v, 1146 const Arc& prev = INVALID) {1148 const Arc& prev = INVALID) const { 1147 1149 Arc arc = Parent::findArc(u, v, prev); 1148 1150 while (arc != INVALID && !(*_edge_filter_map)[arc]) { … … 1154 1156 typedef FindEdgeTagIndicator<Graph> FindEdgeTag; 1155 1157 Edge findEdge(const Node& u, const Node& v, 1156 const Edge& prev = INVALID) {1158 const Edge& prev = INVALID) const { 1157 1159 Edge edge = Parent::findEdge(u, v, prev); 1158 1160 while (edge != INVALID && !(*_edge_filter_map)[edge]) { … … 2244 2246 typedef FindEdgeTagIndicator<Graph> FindArcTag; 2245 2247 Arc findArc(const Node& u, const Node& v, 2246 const Arc& prev = INVALID) {2248 const Arc& prev = INVALID) const { 2247 2249 Arc arc = prev; 2248 2250 bool d = arc == INVALID ? true : (*_direction)[arc]; … … 3098 3100 template <typename _Digraph> 3099 3101 class SplitNodes 3100 : public DigraphAdaptorExtender<SplitNodesBase< _Digraph> > {3102 : public DigraphAdaptorExtender<SplitNodesBase<const _Digraph> > { 3101 3103 public: 3102 3104 typedef _Digraph Digraph; 3103 typedef DigraphAdaptorExtender<SplitNodesBase< Digraph> > Parent;3105 typedef DigraphAdaptorExtender<SplitNodesBase<const Digraph> > Parent; 3104 3106 3105 3107 typedef typename Digraph::Node DigraphNode; … … 3112 3114 /// 3113 3115 /// Constructor of the adaptor. 3114 SplitNodes( Digraph& g) {3116 SplitNodes(const Digraph& g) { 3115 3117 Parent::setDigraph(g); 3116 3118 }
Note: See TracChangeset
for help on using the changeset viewer.