Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
SiftingHeuristic.h
Go to the documentation of this file.
1
32#pragma once
33
34#include <ogdf/basic/basic.h>
36
37namespace ogdf {
38class CrossingsMatrix;
39class HierarchyLevels;
40class Level;
41
43
47public:
50
53
55
57 virtual LayerByLayerSweep* clone() const override { return new SiftingHeuristic(*this); }
58
60 enum class Strategy { LeftToRight, DescDegree, Random };
61
63 virtual void init(const HierarchyLevels& levels) override;
64
66 virtual void call(Level& L) override;
67
69 virtual void cleanup() override;
70
72 Strategy strategy() const { return m_strategy; }
73
79 void strategy(Strategy strategy) { m_strategy = strategy; }
80
81private:
84};
85
86}
Declaration of interface for two-layer crossing minimization algorithms.
Basic declarations, included by all source files.
Implements crossings matrix which is used by some TwoLayerCrossingMinimization heuristics (e....
Representation of proper hierarchies used by Sugiyama-layout.
Interface of two-layer crossing minimization algorithms.
Representation of levels in hierarchies.
Definition Level.h:66
The sifting heuristic for 2-layer crossing minimization.
SiftingHeuristic(const SiftingHeuristic &crossMin)
Creates a new instance of the sifting heuristic with the same option settings as crossMin.
SiftingHeuristic()
Creates a new instance of the sifting heuristic with default option settings.
virtual void init(const HierarchyLevels &levels) override
Initializes crossing minimization for hierarchy H.
CrossingsMatrix * m_crossingMatrix
virtual void call(Level &L) override
Calls the sifting heuristic for level L.
void strategy(Strategy strategy)
Set for Strategy.
virtual LayerByLayerSweep * clone() const override
Returns a new instance of the sifting heuristic with the same option settings.
Strategy
Enumerates the different sifting strategies.
virtual void cleanup() override
Does some clean-up after calls.
Strategy strategy() const
Get for Strategy.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
Definition config.h:117
The namespace for all OGDF objects.