Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
ogdf::planar_separator::SeparatorDualHelper Class Reference

Helper class for SeparatorDual and SeparatorDualFC. More...

#include <ogdf/graphalg/planar_separator/SeparatorDualHelper.h>

Classes

struct  CycleData
 Auxiliary lightweight data structure to represent cycles. More...
 

Public Member Functions

 SeparatorDualHelper (std::shared_ptr< GraphCopy > pGraph, std::shared_ptr< BFSTree > pTree)
 
CycleData dfs ()
 Recursive Depth First Search over the faces of the dual of the graph.
 
List< std::pair< face, adjEntry > > getUnmarkedNeighbours (face f, adjEntry adj)
 Finds all unmarked neighbours of a face.
 
CycleData process (face f, adjEntry adj)
 Processes a face: One step of the recursion in the DFS.
 

Public Attributes

CombinatorialEmbedding embedding
 
std::shared_ptr< GraphCopygraph
 
FaceArray< boolmarked
 
std::shared_ptr< BFSTreetree
 

Detailed Description

Helper class for SeparatorDual and SeparatorDualFC.

Definition at line 47 of file SeparatorDualHelper.h.

Constructor & Destructor Documentation

◆ SeparatorDualHelper()

ogdf::planar_separator::SeparatorDualHelper::SeparatorDualHelper ( std::shared_ptr< GraphCopy pGraph,
std::shared_ptr< BFSTree pTree 
)
inline

Definition at line 49 of file SeparatorDualHelper.h.

Member Function Documentation

◆ dfs()

CycleData ogdf::planar_separator::SeparatorDualHelper::dfs ( )

Recursive Depth First Search over the faces of the dual of the graph.

Returns
a data structure that holds information on the cycle

◆ getUnmarkedNeighbours()

List< std::pair< face, adjEntry > > ogdf::planar_separator::SeparatorDualHelper::getUnmarkedNeighbours ( face  f,
adjEntry  adj 
)

Finds all unmarked neighbours of a face.

Parameters
fthe face to be examined
adjthe adjEntry via which the face was entered
Returns
a list containing the unmarked neighbouring faces and the entries that lead to them

◆ process()

CycleData ogdf::planar_separator::SeparatorDualHelper::process ( face  f,
adjEntry  adj 
)

Processes a face: One step of the recursion in the DFS.

Parameters
fthe face to be processed
adjthe adjEntry via which the face was entered
Returns
the next CycleData

Member Data Documentation

◆ embedding

CombinatorialEmbedding ogdf::planar_separator::SeparatorDualHelper::embedding

Definition at line 206 of file SeparatorDualHelper.h.

◆ graph

std::shared_ptr<GraphCopy> ogdf::planar_separator::SeparatorDualHelper::graph

Definition at line 202 of file SeparatorDualHelper.h.

◆ marked

FaceArray<bool> ogdf::planar_separator::SeparatorDualHelper::marked

Definition at line 207 of file SeparatorDualHelper.h.

◆ tree

std::shared_ptr<BFSTree> ogdf::planar_separator::SeparatorDualHelper::tree

Definition at line 203 of file SeparatorDualHelper.h.


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