Changeset 1009:8cb323dbae93 in lemon-0.x for src/work/marci/merge_node_graph_wrapper_test.cc
- Timestamp:
- 11/19/04 18:22:29 (19 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@1399
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/work/marci/merge_node_graph_wrapper_test.cc
r1008 r1009 1 1 #include <iostream> 2 #include <fstream> 2 3 3 4 #include <lemon/list_graph.h> 4 5 #include <lemon/smart_graph.h> 6 #include <lemon/dimacs.h> 5 7 #include <merge_node_graph_wrapper.h> 6 8 … … 24 26 typedef ListGraph Graph2; 25 27 26 // {27 // checkConcept<StaticGraph, NewEdgeSetGraphWrapper<Graph1, Graph2> >();28 // }29 28 { 29 checkConcept<StaticGraph, NewEdgeSetGraphWrapper<Graph1, Graph2> >(); 30 } 31 { 32 checkConcept<StaticGraph, MergeEdgeGraphWrapper<Graph1, Graph2> >(); 33 } 34 30 35 Graph1 g; 31 36 Graph2 h; 32 typedef Merge NodeGraphWrapper<Graph1, Graph2> GW;37 typedef MergeEdgeGraphWrapper<Graph1, Graph2> GW; 33 38 GW gw(g, h); 34 Graph1::Node n1=g.addNode(); 35 Graph1::Node n2=g.addNode(); 36 Graph1::Node n3=g.addNode(); 37 Graph2::Node n4=h.addNode(); 38 Graph2::Node n5=h.addNode(); 39 40 std::ifstream f1("graph1.dim"); 41 std::ifstream f2("graph2.dim"); 42 readDimacs(f1, g); 43 readDimacs(f2, h); 44 { 45 46 // Graph1::Node n1=g.addNode(); 47 // Graph1::Node n2=g.addNode(); 48 // Graph1::Node n3=g.addNode(); 49 // Graph2::Node n4=h.addNode(); 50 // Graph2::Node n5=h.addNode(); 51 // Graph2::Node n6=h.addNode(); 52 // Graph1::Edge e1=g.addEdge(n1, n2); 53 // Graph1::Edge e2=g.addEdge(n1, n3); 54 // Graph2::Edge e3=h.addEdge(n4, n5); 55 // Graph2::Edge e4=h.addEdge(n4, n5); 39 56 //GW::NodeIt n(gw) 57 cout << "1st graph" << endl; 58 cout << " nodes:" << endl; 59 for (Graph1::NodeIt n(g); n!=INVALID; ++n) { 60 cout << " " << g.id(n) << endl; 61 } 62 cout << " edges:" << endl; 63 for (Graph1::EdgeIt n(g); n!=INVALID; ++n) { 64 cout << " " << g.id(n) << ": " 65 << g.id(g.source(n)) << "->" << g.id(g.target(n)) << endl; 66 } 67 cout << "2nd graph" << endl; 68 cout << " nodes:" << endl; 69 for (Graph2::NodeIt n(h); n!=INVALID; ++n) { 70 cout << " " << h.id(n) << endl; 71 } 72 cout << " edges:" << endl; 73 for (Graph2::EdgeIt n(h); n!=INVALID; ++n) { 74 cout << " " << h.id(n) << ": " 75 << h.id(h.source(n)) << "->" << h.id(h.target(n)) << endl; 76 } 77 cout << "merged graph" << endl; 78 cout << " nodes:" << endl; 40 79 for (GW::NodeIt n(gw); n!=INVALID; ++n) { 41 cout << gw.id(n) << endl; 80 cout << " "<< gw.id(n) << endl; 81 } 82 cout << " edges:" << endl; 83 for (GW::EdgeIt n(gw); n!=INVALID; ++n) { 84 cout << " " << gw.id(n) << ": " 85 << gw.id(gw.source(n)) << "->" << gw.id(gw.target(n)) << endl; 42 86 } 43 87 … … 49 93 } 50 94 for (Graph1::NodeIt n(g); n!=INVALID; ++n) { 51 cout << nm[ n] << endl;95 cout << nm[GW::Node(n,INVALID,false)] << endl; 52 96 } 53 97 for (Graph2::NodeIt n(h); n!=INVALID; ++n) { 54 cout << nm[ n] << endl;98 cout << nm[GW::Node(INVALID,n,true)] << endl; 55 99 } 56 100 57 gw.print ();101 gw.printNode(); 58 102 59 103 { … … 65 109 typedef MergeNodeGraphWrapper<Graph1, Graph2> GW; 66 110 GW gw(g, h); 67 gw.print ();111 gw.printNode(); 68 112 } 69 113 { … … 75 119 typedef MergeNodeGraphWrapper<Graph1, Graph2> GW; 76 120 GW gw(g, h); 77 gw.print ();121 gw.printNode(); 78 122 } 79 123 { … … 85 129 typedef MergeNodeGraphWrapper<Graph1, Graph2> GW; 86 130 GW gw(g, h); 87 gw.print ();131 gw.printNode(); 88 132 } 89 133 }
Note: See TracChangeset
for help on using the changeset viewer.