src/lemon/clearable_graph_extender.h
author alpar
Sun, 14 Nov 2004 13:15:46 +0000
changeset 991 e619a466ca5d
parent 946 c94ef40a22ce
child 1022 567f392d1d2e
permissions -rw-r--r--
- Move template.h to doc/.
- Insert the license terms into the documentation.
- template.h now appears under the coding style documentation.
     1 // -*- c++ -*-
     2 
     3 #ifndef LEMON_CLEARABLE_GRAPH_EXTENDER_H
     4 #define LEMON_CLEARABLE_GRAPH_EXTENDER_H
     5 
     6 #include <lemon/invalid.h>
     7 
     8 
     9 namespace lemon {
    10 
    11   template <typename _Base> 
    12   class ClearableGraphExtender : public _Base {
    13   public:
    14 
    15     typedef ClearableGraphExtender Graph;
    16     typedef _Base Parent;
    17     typedef typename Parent::Node Node;
    18     typedef typename Parent::Edge Edge;
    19 
    20     void clear() {
    21       Parent::getObserverRegistry(Node()).clear();
    22       Parent::getObserverRegistry(Edge()).clear();
    23       Parent::clear();
    24     }
    25 
    26   };
    27 
    28 }
    29 
    30 #endif