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
36
37namespace ogdf {
38
40
44public:
47
50
52
54 virtual LayerByLayerSweep* clone() const override { return new SiftingHeuristic(*this); }
55
57 enum class Strategy { LeftToRight, DescDegree, Random };
58
60 virtual void init(const HierarchyLevels& levels) override;
61
63 virtual void call(Level& L) override;
64
66 virtual void cleanup() override;
67
69 Strategy strategy() const { return m_strategy; }
70
76 void strategy(Strategy strategy) { m_strategy = strategy; }
77
78private:
81};
82
83}
Declaration of class CrossingsMatrix.
Declaration of interface for two-layer crossing minimization algorithms.
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:60
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 DLL.
Definition config.h:101
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.