src/lemon/clearable_graph_extender.h
changeset 1022 567f392d1d2e
parent 980 0f1044b7a3af
child 1039 bd01c5a3f989
     1.1 --- a/src/lemon/clearable_graph_extender.h	Thu Nov 25 14:48:24 2004 +0000
     1.2 +++ b/src/lemon/clearable_graph_extender.h	Sun Nov 28 16:30:10 2004 +0000
     1.3 @@ -25,6 +25,25 @@
     1.4  
     1.5    };
     1.6  
     1.7 +  template <typename _Base> 
     1.8 +  class ClearableUndirGraphExtender : public _Base {
     1.9 +  public:
    1.10 +
    1.11 +    typedef ClearableUndirGraphExtender Graph;
    1.12 +    typedef _Base Parent;
    1.13 +    typedef typename Parent::Node Node;
    1.14 +    typedef typename Parent::UndirEdge UndirEdge;
    1.15 +    typedef typename Parent::Edge Edge;
    1.16 +
    1.17 +    void clear() {
    1.18 +      Parent::getObserverRegistry(Node()).clear();
    1.19 +      Parent::getObserverRegistry(UndirEdge()).clear();
    1.20 +      Parent::getObserverRegistry(Edge()).clear();
    1.21 +      Parent::clear();
    1.22 +    }
    1.23 +
    1.24 +  };
    1.25 +
    1.26  }
    1.27  
    1.28  #endif