00001 /* 00002 * $Revision: 2299 $ 00003 * 00004 * last checkin: 00005 * $Author: gutwenger $ 00006 * $Date: 2012-05-07 15:57:08 +0200 (Mon, 07 May 2012) $ 00007 ***************************************************************/ 00008 00044 #ifdef _MSC_VER 00045 #pragma once 00046 #endif 00047 00048 #ifndef OGDF_UPWARD_PLANAR_SUBGRAPH_MODULE_H 00049 #define OGDF_UPWARD_PLANAR_SUBGRAPH_MODULE_H 00050 00051 00052 00053 #include <ogdf/basic/GraphCopy.h> 00054 00055 00056 namespace ogdf { 00057 00061 class OGDF_EXPORT UpwardPlanarSubgraphModule { 00062 public: 00064 UpwardPlanarSubgraphModule() { } 00065 00066 // destruction 00067 virtual ~UpwardPlanarSubgraphModule() { } 00068 00077 virtual void call(const Graph &G, List<edge> &delEdges) = 0; 00078 00079 00081 void operator()(const Graph &G, List<edge> &delEdges) { 00082 call(G,delEdges); 00083 } 00084 00085 00092 void callAndDelete(GraphCopy &GC, List<edge> &delOrigEdges); 00093 00094 00095 00096 OGDF_MALLOC_NEW_DELETE 00097 }; // class UpwardPlanarSubgraph 00098 00099 00100 00101 } // end namespace ogdf 00102 00103 #endif