125 typedef EdgeNumTagIndicator<Graph> EdgeNumTag; |
125 typedef EdgeNumTagIndicator<Graph> EdgeNumTag; |
126 int edgeNum() const { return graph->edgeNum(); } |
126 int edgeNum() const { return graph->edgeNum(); } |
127 int uEdgeNum() const { return graph->uEdgeNum(); } |
127 int uEdgeNum() const { return graph->uEdgeNum(); } |
128 |
128 |
129 typedef FindEdgeTagIndicator<Graph> FindEdgeTag; |
129 typedef FindEdgeTagIndicator<Graph> FindEdgeTag; |
130 Edge findEdge(const Node& source, const Node& target, |
130 Edge findEdge(const Node& u, const Node& v, |
131 const Edge& prev = INVALID) { |
131 const Edge& prev = INVALID) { |
132 return graph->findEdge(source, target, prev); |
132 return graph->findEdge(u, v, prev); |
133 } |
133 } |
134 UEdge findUEdge(const Node& source, const Node& target, |
134 UEdge findUEdge(const Node& u, const Node& v, |
135 const UEdge& prev = INVALID) { |
135 const UEdge& prev = INVALID) { |
136 return graph->findUEdge(source, target, prev); |
136 return graph->findUEdge(u, v, prev); |
137 } |
137 } |
138 |
138 |
139 Node addANode() const { return graph->addANode(); } |
139 Node addANode() const { return graph->addANode(); } |
140 Node addBNode() const { return graph->addBNode(); } |
140 Node addBNode() const { return graph->addBNode(); } |
141 UEdge addEdge(const Node& source, const Node& target) const { |
141 UEdge addEdge(const Node& u, const Node& v) const { |
142 return graph->addEdge(source, target); |
142 return graph->addEdge(u, v); |
143 } |
143 } |
144 |
144 |
145 void erase(const Node& i) const { graph->erase(i); } |
145 void erase(const Node& i) const { graph->erase(i); } |
146 void erase(const UEdge& i) const { graph->erase(i); } |
146 void erase(const UEdge& i) const { graph->erase(i); } |
147 |
147 |
154 int id(const ANode& v) const { return graph->id(v); } |
154 int id(const ANode& v) const { return graph->id(v); } |
155 int id(const BNode& v) const { return graph->id(v); } |
155 int id(const BNode& v) const { return graph->id(v); } |
156 int id(const Edge& e) const { return graph->id(e); } |
156 int id(const Edge& e) const { return graph->id(e); } |
157 int id(const UEdge& e) const { return graph->id(e); } |
157 int id(const UEdge& e) const { return graph->id(e); } |
158 |
158 |
159 Node fromNodeId(int id) const { return graph->fromNodeId(id); } |
159 Node fromNodeId(int ix) const { return graph->fromNodeId(ix); } |
160 ANode nodeFromANodeId(int id) const { return graph->nodeFromANodeId(id); } |
160 ANode nodeFromANodeId(int ix) const { return graph->nodeFromANodeId(ix); } |
161 BNode nodeFromBNodeId(int id) const { return graph->nodeFromBNodeId(id); } |
161 BNode nodeFromBNodeId(int ix) const { return graph->nodeFromBNodeId(ix); } |
162 Edge fromEdgeId(int id) const { return graph->fromEdgeId(id); } |
162 Edge fromEdgeId(int ix) const { return graph->fromEdgeId(ix); } |
163 UEdge fromUEdgeId(int id) const { return graph->fromUEdgeId(id); } |
163 UEdge fromUEdgeId(int ix) const { return graph->fromUEdgeId(ix); } |
164 |
164 |
165 int maxNodeId() const { return graph->maxNodeId(); } |
165 int maxNodeId() const { return graph->maxNodeId(); } |
166 int maxANodeId() const { return graph->maxANodeId(); } |
166 int maxANodeId() const { return graph->maxANodeId(); } |
167 int maxBNodeId() const { return graph->maxBNodeId(); } |
167 int maxBNodeId() const { return graph->maxBNodeId(); } |
168 int maxEdgeId() const { return graph->maxEdgeId(); } |
168 int maxEdgeId() const { return graph->maxEdgeId(); } |
359 void nextFromBNode(UEdge& i) const { Parent::nextFromANode(i); } |
359 void nextFromBNode(UEdge& i) const { Parent::nextFromANode(i); } |
360 |
360 |
361 int id(const ANode& v) const { return Parent::id(v); } |
361 int id(const ANode& v) const { return Parent::id(v); } |
362 int id(const BNode& v) const { return Parent::id(v); } |
362 int id(const BNode& v) const { return Parent::id(v); } |
363 |
363 |
364 ANode nodeFromANodeId(int id) const { return Parent::nodeFromBNodeId(id); } |
364 ANode nodeFromANodeId(int ix) const { return Parent::nodeFromBNodeId(ix); } |
365 BNode nodeFromBNodeId(int id) const { return Parent::nodeFromANodeId(id); } |
365 BNode nodeFromBNodeId(int ix) const { return Parent::nodeFromANodeId(ix); } |
366 |
366 |
367 int maxANodeId() const { return Parent::maxBNodeId(); } |
367 int maxANodeId() const { return Parent::maxBNodeId(); } |
368 int maxBNodeId() const { return Parent::maxANodeId(); } |
368 int maxBNodeId() const { return Parent::maxANodeId(); } |
369 |
369 |
370 int aNodeNum() const { return Parent::bNodeNum(); } |
370 int aNodeNum() const { return Parent::bNodeNum(); } |