Interface for minor-monotone crossing minimization algorithms.
More...
#include <ogdf/planarity/MMCrossingMinimizationModule.h>
Interface for minor-monotone crossing minimization algorithms.
Definition at line 49 of file MMCrossingMinimizationModule.h.
◆ MMCrossingMinimizationModule()
ogdf::MMCrossingMinimizationModule::MMCrossingMinimizationModule |
( |
| ) |
|
|
inline |
◆ ~MMCrossingMinimizationModule()
virtual ogdf::MMCrossingMinimizationModule::~MMCrossingMinimizationModule |
( |
| ) |
|
|
inlinevirtual |
◆ call() [1/3]
ReturnType ogdf::MMCrossingMinimizationModule::call |
( |
const Graph & |
G, |
|
|
const List< node > & |
splittableNodes, |
|
|
int & |
cr, |
|
|
const EdgeArray< bool > * |
forbid = nullptr |
|
) |
| |
Performs minor-monotone crossing minimization on G
for given splittable nodes.
- Parameters
-
G | is the input graph. |
splittableNodes | is the list of nodes that are allowed to be split. |
cr | is assigned the number of crossings. |
forbid | points to an edge array indicating which edges are not allowed to be crossed, i.e., (*forbid)[e] = true. If forbid = 0, no edges are forbidden. |
- Returns
- the status of the result.
◆ call() [2/3]
ReturnType ogdf::MMCrossingMinimizationModule::call |
( |
const Graph & |
G, |
|
|
int & |
cr, |
|
|
const EdgeArray< bool > * |
forbid = nullptr |
|
) |
| |
Performs minor-monotone crossing minimization on G
.
- Parameters
-
G | is the input graph. |
cr | is assigned the number of crossings. |
forbid | points to an edge array indicating which edges are not allowed to be crossed, i.e., (*forbid)[e] = true. If forbid = 0, no edges are forbidden. |
- Returns
- the status of the result.
◆ call() [3/3]
Computes a planarized representation of an expansion of the input graph.
- Parameters
-
PG | represents the input graph as well as the computed planarized expansion after the call. PG has to be initialzed as a PlanRepExpansion of the input graph and is modified to obatain the planarized representation (nodes are eventually expanded by splitting the node and crossings are replaced by dummy vertices with degree four). |
cc | is the number of the connected component in PG that is considered. |
crossingNumber | is assigned the number of crossings. |
forbid | points to an edge array indicating which edges are not allowed to be crossed, i.e., (*forbid)[e] = true. If forbid = 0, no edges are forbidden. |
- Returns
- the status of the result.
Definition at line 72 of file MMCrossingMinimizationModule.h.
◆ doCall()
virtual ReturnType ogdf::MMCrossingMinimizationModule::doCall |
( |
PlanRepExpansion & |
PG, |
|
|
int |
cc, |
|
|
const EdgeArray< bool > * |
forbid, |
|
|
int & |
crossingNumber, |
|
|
int & |
numNS, |
|
|
int & |
numSN |
|
) |
| |
|
protectedpure virtual |
Actual algorithm call that needs to be implemented by derived classed.
- Parameters
-
PG | represents the input graph as well as the computed planarized expansion after the call. PG is initialized as a PlanRepExpansion of the input graph and needs to be modified to obatain the planarized representation (crossings are replaced by dummy vertices with degree four). |
cc | is the number of the connected component in PG that is considered. |
forbid | points to an edge array indicating which edges are not allowed to be crossed, i.e., (*forbid)[e] = true. |
crossingNumber | needs to be assigned the number of crossings. |
numNS | needs to be assigned the required number of node splits. |
numSN | needs to be assigned the number of splitted nodes. |
- Returns
- the status of the result.
Implemented in ogdf::MMSubgraphPlanarizer.
◆ numberOfNodeSplits()
int ogdf::MMCrossingMinimizationModule::numberOfNodeSplits |
( |
| ) |
const |
|
inline |
◆ numberOfSplittedNodes()
int ogdf::MMCrossingMinimizationModule::numberOfSplittedNodes |
( |
| ) |
const |
|
inline |
◆ m_nodeSplits
int ogdf::MMCrossingMinimizationModule::m_nodeSplits |
|
private |
◆ m_splittedNodes
int ogdf::MMCrossingMinimizationModule::m_splittedNodes |
|
private |
The documentation for this class was generated from the following file: