Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches

The split heuristic for 2-layer crossing minimization. More...

#include <ogdf/layered/SplitHeuristic.h>

+ Inheritance diagram for ogdf::SplitHeuristic:

Public Member Functions

 SplitHeuristic ()
 Creates a new instance of the split heuristic.
 
 SplitHeuristic (const SplitHeuristic &crossMin)
 Creates a new instance of the split heuristic.
 
 ~SplitHeuristic ()
 
void call (Level &L) override
 Calls the split heuristic for level L.
 
void call (Level &L, const EdgeArray< uint32_t > *edgeSubGraphs) override
 Calls the median heuristic for level L (simultaneous drawing).
 
void cleanup () override
 Does some clean-up after calls.
 
TwoLayerCrossMinSimDrawclone () const override
 Returns a new instance of the splitheurisitc with the same option settings.
 
void init (const HierarchyLevels &levels) override
 Initializes crossing minimization for hierarchy H.
 
- Public Member Functions inherited from ogdf::TwoLayerCrossMinSimDraw
 TwoLayerCrossMinSimDraw ()
 Initializes a two-layer crossing minimization module.
 
- Public Member Functions inherited from ogdf::LayerByLayerSweep
 LayerByLayerSweep ()
 Initializes a two-layer crossing minimization module.
 
virtual ~LayerByLayerSweep ()
 
void operator() (Level &L)
 Performs crossing minimization for level L.
 
virtual const HierarchyLevelsreduceCrossings (const SugiyamaLayout &sugi, const Hierarchy &H, int &nCrossings)
 
virtual const HierarchyLevelsreduceCrossings (const SugiyamaLayout &sugi, Hierarchy &H, int &nCrossings) override
 Template method implementation of reduceCrossings from LayeredCrossMinModule.
 
- Public Member Functions inherited from ogdf::LayeredCrossMinModule
 LayeredCrossMinModule ()
 Creates empty module.
 
virtual ~LayeredCrossMinModule ()
 Destruct.
 

Private Member Functions

void recCall (Level &, int low, int high)
 

Private Attributes

Array< nodem_buffer
 
CrossingsMatrixm_cm
 

Detailed Description

The split heuristic for 2-layer crossing minimization.

Definition at line 45 of file SplitHeuristic.h.

Constructor & Destructor Documentation

◆ SplitHeuristic() [1/2]

ogdf::SplitHeuristic::SplitHeuristic ( )
inline

Creates a new instance of the split heuristic.

Definition at line 48 of file SplitHeuristic.h.

◆ SplitHeuristic() [2/2]

ogdf::SplitHeuristic::SplitHeuristic ( const SplitHeuristic crossMin)
inline

Creates a new instance of the split heuristic.

Definition at line 51 of file SplitHeuristic.h.

◆ ~SplitHeuristic()

ogdf::SplitHeuristic::~SplitHeuristic ( )
inline

Definition at line 53 of file SplitHeuristic.h.

Member Function Documentation

◆ call() [1/2]

void ogdf::SplitHeuristic::call ( Level L)
overridevirtual

Calls the split heuristic for level L.

Implements ogdf::TwoLayerCrossMinSimDraw.

◆ call() [2/2]

void ogdf::SplitHeuristic::call ( Level L,
const EdgeArray< uint32_t > *  edgeSubGraphs 
)
overridevirtual

Calls the median heuristic for level L (simultaneous drawing).

Implements ogdf::TwoLayerCrossMinSimDraw.

◆ cleanup()

void ogdf::SplitHeuristic::cleanup ( )
overridevirtual

Does some clean-up after calls.

Reimplemented from ogdf::LayerByLayerSweep.

◆ clone()

TwoLayerCrossMinSimDraw * ogdf::SplitHeuristic::clone ( ) const
inlineoverridevirtual

Returns a new instance of the splitheurisitc with the same option settings.

Implements ogdf::TwoLayerCrossMinSimDraw.

Definition at line 56 of file SplitHeuristic.h.

◆ init()

void ogdf::SplitHeuristic::init ( const HierarchyLevels levels)
overridevirtual

Initializes crossing minimization for hierarchy H.

Reimplemented from ogdf::LayerByLayerSweep.

◆ recCall()

void ogdf::SplitHeuristic::recCall ( Level ,
int  low,
int  high 
)
private

Member Data Documentation

◆ m_buffer

Array<node> ogdf::SplitHeuristic::m_buffer
private

Definition at line 72 of file SplitHeuristic.h.

◆ m_cm

CrossingsMatrix* ogdf::SplitHeuristic::m_cm
private

Definition at line 71 of file SplitHeuristic.h.


The documentation for this class was generated from the following file: