Changeset 2386:81b47fc5c444 in lemon-0.x for lemon/edge_set.h
- Timestamp:
- 03/02/07 19:04:28 (17 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@3217
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/edge_set.h
r2384 r2386 87 87 ListEdgeSetBase() : first_edge(-1), first_free_edge(-1) {} 88 88 89 Edge addEdge(const Node& source, const Node& target) {89 Edge addEdge(const Node& u, const Node& v) { 90 90 int n; 91 91 if (first_free_edge == -1) { … … 96 96 first_free_edge = edges[first_free_edge].next_in; 97 97 } 98 edges[n].next_in = (*nodes)[ target].first_in;99 if ((*nodes)[ target].first_in != -1) {100 edges[(*nodes)[ target].first_in].prev_in = n;101 } 102 (*nodes)[ target].first_in = n;103 edges[n].next_out = (*nodes)[ source].first_out;104 if ((*nodes)[ source].first_out != -1) {105 edges[(*nodes)[ source].first_out].prev_out = n;106 } 107 (*nodes)[ source].first_out = n;108 edges[n].source = source;109 edges[n].target = target;98 edges[n].next_in = (*nodes)[v].first_in; 99 if ((*nodes)[v].first_in != -1) { 100 edges[(*nodes)[v].first_in].prev_in = n; 101 } 102 (*nodes)[v].first_in = n; 103 edges[n].next_out = (*nodes)[u].first_out; 104 if ((*nodes)[u].first_out != -1) { 105 edges[(*nodes)[u].first_out].prev_out = n; 106 } 107 (*nodes)[u].first_out = n; 108 edges[n].source = u; 109 edges[n].target = v; 110 110 return Edge(n); 111 111 } … … 189 189 int id(const Edge& edge) const { return edge.id; } 190 190 191 Node nodeFromId(int i d) const { return graph->nodeFromId(id); }192 Edge edgeFromId(int i d) const { return Edge(id); }191 Node nodeFromId(int ix) const { return graph->nodeFromId(ix); } 192 Edge edgeFromId(int ix) const { return Edge(ix); } 193 193 194 194 int maxNodeId() const { return graph->maxNodeId(); }; … … 294 294 } 295 295 virtual void erase(const std::vector<Node>& nodes) { 296 for (int i = 0; i < (int)nodes.size(); ++i) {296 for (int i = 0; i < int(nodes.size()); ++i) { 297 297 _edgeset.eraseNode(nodes[i]); 298 298 } … … 383 383 } 384 384 virtual void erase(const std::vector<Node>& nodes) { 385 for (int i = 0; i < (int)nodes.size(); ++i) {385 for (int i = 0; i < int(nodes.size()); ++i) { 386 386 _edgeset.eraseNode(nodes[i]); 387 387 } … … 461 461 SmartEdgeSetBase() {} 462 462 463 Edge addEdge(const Node& source, const Node& target) {463 Edge addEdge(const Node& u, const Node& v) { 464 464 int n = edges.size(); 465 465 edges.push_back(EdgeT()); 466 edges[n].next_in = (*nodes)[ target].first_in;467 (*nodes)[ target].first_in = n;468 edges[n].next_out = (*nodes)[ source].first_out;469 (*nodes)[ source].first_out = n;470 edges[n].source = source;471 edges[n].target = target;466 edges[n].next_in = (*nodes)[v].first_in; 467 (*nodes)[v].first_in = n; 468 edges[n].next_out = (*nodes)[u].first_out; 469 (*nodes)[u].first_out = n; 470 edges[n].source = u; 471 edges[n].target = v; 472 472 return Edge(n); 473 473 } … … 517 517 int id(const Edge& edge) const { return edge.id; } 518 518 519 Node nodeFromId(int i d) const { return graph->nodeFromId(id); }520 Edge edgeFromId(int i d) const { return Edge(id); }519 Node nodeFromId(int ix) const { return graph->nodeFromId(ix); } 520 Edge edgeFromId(int ix) const { return Edge(ix); } 521 521 522 522 int maxNodeId() const { return graph->maxNodeId(); }; … … 627 627 virtual void erase(const std::vector<Node>& nodes) { 628 628 try { 629 for (int i = 0; i < (int)nodes.size(); ++i) {629 for (int i = 0; i < int(nodes.size()); ++i) { 630 630 _edgeset.eraseNode(nodes[i]); 631 631 } … … 732 732 virtual void erase(const std::vector<Node>& nodes) { 733 733 try { 734 for (int i = 0; i < (int)nodes.size(); ++i) {734 for (int i = 0; i < int(nodes.size()); ++i) { 735 735 _edgeset.eraseNode(nodes[i]); 736 736 }
Note: See TracChangeset
for help on using the changeset viewer.