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.