C-planarity testing via Hanani-Tutte approach. More...
#include <ogdf/cluster/HananiTutteCPlanarity.h>
Public Types | |
| enum class | Solver { HananiTutte , HananiTutteVerify , ILP } |
| enum class | Status { invalid , emptyAfterPreproc , cConnectedAfterPreproc , nonPlanarAfterPreproc , applyHananiTutte , applyILP , timeoutILP , errorILP } |
| enum class | SubType : uint16_t { stVertex , stCluster , stEdge , stInnerCluster , stOuterCluster , stVertexCluster , stClusterCluster , stCrossCluster } |
| enum class | Type : uint16_t { tVertex , tEdge } |
| enum class | Verification { cPlanar , cPlanarVerified , nonCPlanarVerified , verificationFailed , timeout } |
Public Member Functions | |
| Verification | isCPlanar (const ClusterGraph &C, bool doPreproc=true, bool forceSolver=false, Solver solver=Solver::HananiTutte) |
| int | numClustersPreproc () const |
| int | numEdgesPreproc () const |
| int | numMatrixCols () const |
| int | numMatrixRows () const |
| int | numNodesPreproc () const |
| void | preprocessing (ClusterGraph &C, Graph &G) |
| Status | status () const |
| int64_t | timeCreateSparse () const |
| int64_t | timePrepare () const |
| int64_t | timesolve () const |
Private Attributes | |
| int | m_nCols = 0 |
| int | m_nRows = 0 |
| int | m_numClustersPreproc = 0 |
| int | m_numEdgesPreproc = 0 |
| int | m_numNodesPreproc = 0 |
| Status | m_status = Status::invalid |
| int64_t | m_tCreateSparse = 0 |
| int64_t | m_tPrepare = 0 |
| int64_t | m_tSolve = 0 |
C-planarity testing via Hanani-Tutte approach.
Definition at line 44 of file HananiTutteCPlanarity.h.
| Enumerator | |
|---|---|
| HananiTutte | |
| HananiTutteVerify | |
| ILP | |
Definition at line 49 of file HananiTutteCPlanarity.h.
| Enumerator | |
|---|---|
| invalid | |
| emptyAfterPreproc | |
| cConnectedAfterPreproc | |
| nonPlanarAfterPreproc | |
| applyHananiTutte | |
| applyILP | |
| timeoutILP | |
| errorILP | |
Definition at line 50 of file HananiTutteCPlanarity.h.
| Enumerator | |
|---|---|
| stVertex | |
| stCluster | |
| stEdge | |
| stInnerCluster | |
| stOuterCluster | |
| stVertexCluster | |
| stClusterCluster | |
| stCrossCluster | |
Definition at line 69 of file HananiTutteCPlanarity.h.
| Enumerator | |
|---|---|
| tVertex | |
| tEdge | |
Definition at line 68 of file HananiTutteCPlanarity.h.
| Enumerator | |
|---|---|
| cPlanar | |
| cPlanarVerified | |
| nonCPlanarVerified | |
| verificationFailed | |
| timeout | |
Definition at line 60 of file HananiTutteCPlanarity.h.
| Verification ogdf::HananiTutteCPlanarity::isCPlanar | ( | const ClusterGraph & | C, |
| bool | doPreproc = true, |
||
| bool | forceSolver = false, |
||
| Solver | solver = Solver::HananiTutte |
||
| ) |
|
inline |
Definition at line 91 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 89 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 95 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 93 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 87 of file HananiTutteCPlanarity.h.
| void ogdf::HananiTutteCPlanarity::preprocessing | ( | ClusterGraph & | C, |
| Graph & | G | ||
| ) |
|
inline |
Definition at line 83 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 99 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 97 of file HananiTutteCPlanarity.h.
|
inline |
Definition at line 101 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 105 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 104 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 113 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 112 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 111 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 110 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 107 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 106 of file HananiTutteCPlanarity.h.
|
private |
Definition at line 108 of file HananiTutteCPlanarity.h.