Open
Graph Drawing
Framework

 v.2007.11
 

FastPlanarSubgraph.h

Go to the documentation of this file.
00001 /*
00002  * $Revision: 1.6 $
00003  * 
00004  * last checkin:
00005  *   $Author: gutwenger $ 
00006  *   $Date: 2007-11-08 16:10:37 +0100 (Do, 08 Nov 2007) $ 
00007  ***************************************************************/
00008  
00050 #ifdef _MSC_VER
00051 #pragma once
00052 #endif
00053 
00054 
00055 #ifndef OGDF_FAST_PLANAR_SUBGRAPH_H
00056 #define OGDF_FAST_PLANAR_SUBGRAPH_H
00057 
00058 
00059 
00060 #include <ogdf/module/PlanarSubgraphModule.h>
00061 
00062 
00063 namespace ogdf {
00064 
00086 class FastPlanarSubgraph : public PlanarSubgraphModule{
00087 
00088 public:
00090     FastPlanarSubgraph() : PlanarSubgraphModule() {
00091         m_nRuns = 0;
00092     };
00093 
00094     // destructor
00095     ~FastPlanarSubgraph() {};
00096 
00097 
00098     // options
00099 
00101     void runs (int nRuns) {
00102         m_nRuns = nRuns;
00103     }
00104 
00106     int runs() const {
00107         return m_nRuns;
00108     }
00109 
00110 
00111 protected:
00113 
00116     ReturnType doCall(const Graph &G,
00117         const List<edge> &preferedEdges,
00118         List<edge> &delEdges,
00119         const EdgeArray<int>  *pCost,
00120         bool preferedImplyPlanar);
00121 
00122 
00123 private:
00124     int m_nRuns;  
00125 
00126 
00128 
00130     void computeDelEdges(const Graph &G,
00131         const EdgeArray<int> *pCost,
00132         const EdgeArray<edge> *backTableEdges,
00133         List<edge> &delEdges);
00134 
00136 
00138     void planarize(const Graph &G,
00139                    NodeArray<int> &numbering,
00140                    List<edge> &delEdges);
00141 };
00142 
00143 }
00144 #endif


© 1999-2007 by oreas GmbH, © 2005-2007 by University Dortmund and University Cologne.

Generated on Thu Nov 22 19:40:03 2007 by doxygen 1.5.4.