44class CrossingStructure;
51using embedder::CrossingStructure;
167 int& crossingNumber)
override;
184 m_planarization.reset(pPlanarizationModule);
Declaration of CrossingMinimization Module, an interface for crossing minimization algorithms.
Includes declaration of dual graph class.
Includes declaration of graph class.
Declaration of class StarInserter.
Basic declarations, included by all source files.
Base class for crossing minimization algorithms.
A dual graph including its combinatorial embedding of an embedded graph.
Copies of graphs supporting edge splitting.
ReturnType
The return type of a module.
Class for the representation of nodes.
Planarized representations (of a connected component) of a graph.
The star (re-)insertion approach for crossing minimization.
std::unique_ptr< CrossingMinimizationModule > m_planarization
The initial planarization algorithm.
int m_maxIterations
The maximum number of iterations.
bool reinsertStar(GraphCopy ¤tPlanarization, DynamicDualGraph &dualGraph, node nodeToReinsert, CrossingStructure &bestCS, const EdgeArray< int > *pCostOrig, const EdgeArray< bool > *pForbiddenOrig, const EdgeArray< uint32_t > *pEdgeSubGraphs)
Reinserts the star nodeToReinsert in currentPlanarization.
int maxIterations()
Returns the number of maxIterations.
ReturnType mainLoop(const PlanRep &pr, CrossingStructure &bestCS, const EdgeArray< int > *pCostOrig, const EdgeArray< bool > *pForbiddenOrig, const EdgeArray< uint32_t > *pEdgeSubGraphs)
Reinserts a specific set of stars until a termination criterion is met.
void maxIterations(int maxIterations)
Sets the maximum number of iterations.
virtual ReturnType doCall(PlanRep &pr, int cc, const EdgeArray< int > *pCostOrig, const EdgeArray< bool > *pForbiddenOrig, const EdgeArray< uint32_t > *pEdgeSubGraphs, int &crossingNumber) override
Implements the algorithm call.
void setTimeout(bool b)
Sets the option setTimeout to b.
int64_t m_stopTime
When the algorithm should stop.
virtual CrossingMinimizationModule * clone() const override
Returns a new PlanarizerStarReinsertion with the same option settings.
PlanarizerStarReinsertion(const PlanarizerStarReinsertion &planarizer)
Creates a PlanarizerStarReinsertion with the same settings as planarizer.
void setPlanarization(CrossingMinimizationModule *pPlanarizationModule)
Sets the module option for the computation of the inital planarization.
PlanarizerStarReinsertion()
Creates a PlanarizerStarReinsertion with default settings.
bool m_setTimeout
Helper to insert stars.
PlanarizerStarReinsertion & operator=(const PlanarizerStarReinsertion &planarizer)
Assignment operator, copies option settings only.
bool setTimeout()
Returns the current setting of options setTimeout.
Inserts a star (a vertex and its incident edges) optimally into an embedding.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
The namespace for all OGDF objects.