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 00048 #ifndef OGDF_MAXIMAL_PLANAR_SUBGRAPH_SIMPLE_H 00049 #define OGDF_MAXIMAL_PLANAR_SUBGRAPH_SIMPLE_H 00050 00051 00052 00053 00054 #include <ogdf/module/PlanarSubgraphModule.h> 00055 00056 00057 namespace ogdf { 00058 00059 //--------------------------------------------------------- 00060 // MaximalPlanarSubgraphSimple 00061 // implements a maximal planar subgraph algorithm using 00062 // planarity testing 00063 //--------------------------------------------------------- 00064 class OGDF_EXPORT MaximalPlanarSubgraphSimple : public PlanarSubgraphModule 00065 { 00066 public: 00067 // construction 00068 MaximalPlanarSubgraphSimple() { } 00069 // destruction 00070 ~MaximalPlanarSubgraphSimple() { } 00071 00072 00073 protected: 00074 // computes set of edges delEdges, which have to be deleted 00075 // in order to get a planar subgraph; edges in preferedEdges 00076 // should be contained in planar subgraph 00077 ReturnType doCall(const Graph &G, 00078 const List<edge> &preferedEdges, 00079 List<edge> &delEdges, 00080 const EdgeArray<int> *pCost, 00081 bool preferedImplyPlanar); 00082 }; 00083 00084 00085 } // end namespace ogdf 00086 00087 #endif