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 00043 #ifdef _MSC_VER 00044 #pragma once 00045 #endif 00046 00047 #ifndef OGDF_CPLANAR_SUBGRAPH_MODULE_H 00048 #define OGDF_CPLANAR_SUBGRAPH_MODULE_H 00049 00050 #include <ogdf/basic/Module.h> 00051 #include <ogdf/basic/Timeouter.h> 00052 00053 #include <ogdf/cluster/ClusterGraph.h> 00054 //#include <ogdf/internal/cluster/MaxCPlanar_Master.h> 00055 00056 namespace ogdf { 00057 00058 //-------------------------------------------------------------------------- 00059 //CPlanarSubgraphModule 00060 //base class of algorithms for the computation of c-planar subgraphs 00061 //-------------------------------------------------------------------------- 00066 class CPlanarSubgraphModule : public Module, public Timeouter 00067 { 00068 00069 public: 00071 CPlanarSubgraphModule() {} 00073 virtual ~CPlanarSubgraphModule() {} 00074 00084 ReturnType call(const ClusterGraph &G, List<edge> &delEdges) { 00085 return doCall(G, delEdges); 00086 } 00087 00088 00089 protected: 00090 00099 virtual ReturnType doCall(const ClusterGraph &G, 00100 List<edge> &delEdges) = 0; 00101 00102 OGDF_MALLOC_NEW_DELETE 00103 }; 00104 00105 } //end namespace ogdf 00106 00107 00108 #endif // OGDF_CPLANAR_SUBGRAPH_MODULE_H