Changes in lemon/smart_graph.h [125:19e82bda606a:149:2f7ae34e1333] in lemon-main
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/smart_graph.h
r125 r149 74 74 75 75 typedef True NodeNumTag; 76 typedef True ArcNumTag;76 typedef True EdgeNumTag; 77 77 78 78 int nodeNum() const { return nodes.size(); } … … 115 115 static Node nodeFromId(int id) { return Node(id);} 116 116 static Arc arcFromId(int id) { return Arc(id);} 117 118 bool valid(Node n) const { 119 return n._id >= 0 && n._id < static_cast<int>(nodes.size()); 120 } 121 bool valid(Arc a) const { 122 return a._id >= 0 && a._id < static_cast<int>(arcs.size()); 123 } 117 124 118 125 class Node { … … 261 268 /// \sa reserveNode 262 269 void reserveArc(int m) { arcs.reserve(m); }; 270 271 /// \brief Node validity check 272 /// 273 /// This function gives back true if the given node is valid, 274 /// ie. it is a real node of the graph. 275 /// 276 /// \warning A removed node (using Snapshot) could become valid again 277 /// when new nodes are added to the graph. 278 bool valid(Node n) const { return Parent::valid(n); } 279 280 /// \brief Arc validity check 281 /// 282 /// This function gives back true if the given arc is valid, 283 /// ie. it is a real arc of the graph. 284 /// 285 /// \warning A removed arc (using Snapshot) could become valid again 286 /// when new arcs are added to the graph. 287 bool valid(Arc a) const { return Parent::valid(a); } 263 288 264 289 ///Clear the digraph. … … 551 576 static Edge edgeFromId(int id) { return Edge(id);} 552 577 578 bool valid(Node n) const { 579 return n._id >= 0 && n._id < static_cast<int>(nodes.size()); 580 } 581 bool valid(Arc a) const { 582 return a._id >= 0 && a._id < static_cast<int>(arcs.size()); 583 } 584 bool valid(Edge e) const { 585 return e._id >= 0 && 2 * e._id < static_cast<int>(arcs.size()); 586 } 587 553 588 Node addNode() { 554 589 int n = nodes.size(); … … 559 594 } 560 595 561 Edge add Arc(Node u, Node v) {596 Edge addEdge(Node u, Node v) { 562 597 int n = arcs.size(); 563 598 arcs.push_back(ArcT()); … … 640 675 ///\return the new edge. 641 676 Edge addEdge(const Node& s, const Node& t) { 642 return Parent::addArc(s, t); 643 } 677 return Parent::addEdge(s, t); 678 } 679 680 /// \brief Node validity check 681 /// 682 /// This function gives back true if the given node is valid, 683 /// ie. it is a real node of the graph. 684 /// 685 /// \warning A removed node (using Snapshot) could become valid again 686 /// when new nodes are added to the graph. 687 bool valid(Node n) const { return Parent::valid(n); } 688 689 /// \brief Arc validity check 690 /// 691 /// This function gives back true if the given arc is valid, 692 /// ie. it is a real arc of the graph. 693 /// 694 /// \warning A removed arc (using Snapshot) could become valid again 695 /// when new edges are added to the graph. 696 bool valid(Arc a) const { return Parent::valid(a); } 697 698 /// \brief Edge validity check 699 /// 700 /// This function gives back true if the given edge is valid, 701 /// ie. it is a real edge of the graph. 702 /// 703 /// \warning A removed edge (using Snapshot) could become valid again 704 /// when new edges are added to the graph. 705 bool valid(Edge e) const { return Parent::valid(e); } 644 706 645 707 ///Clear the graph.
Note: See TracChangeset
for help on using the changeset viewer.