diff -r d8475431bbbb -r 8e85e6bbefdf src/lemon/bits/extendable_graph_extender.h --- a/src/lemon/bits/extendable_graph_extender.h Sat May 21 21:04:57 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ -// -*- c++ -*- - -#ifndef LEMON_EXTENDABLE_GRAPH_EXTENDER_H -#define LEMON_EXTENDABLE_GRAPH_EXTENDER_H - -namespace lemon { - - template - class ExtendableGraphExtender : public _Base { - public: - - typedef ExtendableGraphExtender Graph; - typedef _Base Parent; - - typedef typename Parent::Node Node; - typedef typename Parent::Edge Edge; - - Node addNode() { - Node node = Parent::addNode(); - Parent::getNotifier(Node()).add(node); - return node; - } - - Edge addEdge(const Node& from, const Node& to) { - Edge edge = Parent::addEdge(from, to); - Parent::getNotifier(Edge()).add(edge); - return edge; - } - - }; - - template - class ExtendableUndirGraphExtender : public _Base { - public: - - typedef ExtendableUndirGraphExtender Graph; - typedef _Base Parent; - - typedef typename Parent::Node Node; - typedef typename Parent::Edge Edge; - typedef typename Parent::UndirEdge UndirEdge; - - Node addNode() { - Node node = Parent::addNode(); - Parent::getNotifier(Node()).add(node); - return node; - } - - UndirEdge addEdge(const Node& from, const Node& to) { - UndirEdge uedge = Parent::addEdge(from, to); - Parent::getNotifier(UndirEdge()).add(uedge); - - std::vector edges; - edges.push_back(Edge(uedge, true)); - edges.push_back(Edge(uedge, false)); - Parent::getNotifier(Edge()).add(edges); - - return uedge; - } - - }; - -} - -#endif