Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
ogdf::planar_separator::SeparatorDualHelper::CycleData Struct Reference

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

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

Public Member Functions

 CycleData ()
 Empty Constructor - only used to be able to throw empty CD in case of algorithm failure.
 
 CycleData (const Graph &G, const face f, const adjEntry adj)
 Constructor.
 
 CycleData (const Graph &G, CycleData &first, CycleData &second)
 Constructor.
 
void addTriangle (adjEntry adj)
 Expands the cycle by adding a triangle.
 
bool checkSize (int n) const
 Checks the size of this cycle.
 
bool isInCycle (node n)
 Checks if a node lies on the cycle.
 
void popBack ()
 
void popFront ()
 
void pushBack (node n)
 
void pushFront (node n)
 
void removeTriangle (adjEntry adj)
 Expands the cycle by removing a triangle.
 

Public Attributes

List< nodecycle
 contains nodes on the cycle, starting with v, ending with u, where e = (u,v) is the initial edge
 
unsigned int inside
 
std::unordered_set< nodenodes
 

Detailed Description

Auxiliary lightweight data structure to represent cycles.

Definition at line 55 of file SeparatorDualHelper.h.

Constructor & Destructor Documentation

◆ CycleData() [1/3]

ogdf::planar_separator::SeparatorDualHelper::CycleData::CycleData ( )
inline

Empty Constructor - only used to be able to throw empty CD in case of algorithm failure.

Do not use this anywhere.

Definition at line 99 of file SeparatorDualHelper.h.

◆ CycleData() [2/3]

ogdf::planar_separator::SeparatorDualHelper::CycleData::CycleData ( const Graph G,
const face  f,
const adjEntry  adj 
)
inline

Constructor.

Constructs a CycleData from a single face.

Parameters
Gthe graph
fthe face
adjadjEntry via which we entered the face

Definition at line 109 of file SeparatorDualHelper.h.

◆ CycleData() [3/3]

ogdf::planar_separator::SeparatorDualHelper::CycleData::CycleData ( const Graph G,
CycleData first,
CycleData second 
)
inline

Constructor.

Constructs a CycleData by merging two Cycles.

Parameters
Gthe graph
firstthe first cycle
secondthe second cycle

Definition at line 123 of file SeparatorDualHelper.h.

Member Function Documentation

◆ addTriangle()

void ogdf::planar_separator::SeparatorDualHelper::CycleData::addTriangle ( adjEntry  adj)
inline

Expands the cycle by adding a triangle.

Parameters
adjthe adjEntry of the triangle that is added

Definition at line 163 of file SeparatorDualHelper.h.

◆ checkSize()

bool ogdf::planar_separator::SeparatorDualHelper::CycleData::checkSize ( int  n) const
inline

Checks the size of this cycle.

Parameters
nthe size of the graph to be checked against
Returns
true if this cycle is large enough

Definition at line 199 of file SeparatorDualHelper.h.

◆ isInCycle()

bool ogdf::planar_separator::SeparatorDualHelper::CycleData::isInCycle ( node  n)
inline

Checks if a node lies on the cycle.

Parameters
nthe node to be checked
Returns
true if node is on the cycle

Definition at line 69 of file SeparatorDualHelper.h.

◆ popBack()

void ogdf::planar_separator::SeparatorDualHelper::CycleData::popBack ( )
inline

Definition at line 85 of file SeparatorDualHelper.h.

◆ popFront()

void ogdf::planar_separator::SeparatorDualHelper::CycleData::popFront ( )
inline

Definition at line 90 of file SeparatorDualHelper.h.

◆ pushBack()

void ogdf::planar_separator::SeparatorDualHelper::CycleData::pushBack ( node  n)
inline

Definition at line 73 of file SeparatorDualHelper.h.

◆ pushFront()

void ogdf::planar_separator::SeparatorDualHelper::CycleData::pushFront ( node  n)
inline

Definition at line 79 of file SeparatorDualHelper.h.

◆ removeTriangle()

void ogdf::planar_separator::SeparatorDualHelper::CycleData::removeTriangle ( adjEntry  adj)
inline

Expands the cycle by removing a triangle.

Parameters
adjthe adjEntry of the triangle that is removed

Definition at line 178 of file SeparatorDualHelper.h.

Member Data Documentation

◆ cycle

List<node> ogdf::planar_separator::SeparatorDualHelper::CycleData::cycle

contains nodes on the cycle, starting with v, ending with u, where e = (u,v) is the initial edge

Definition at line 59 of file SeparatorDualHelper.h.

◆ inside

unsigned int ogdf::planar_separator::SeparatorDualHelper::CycleData::inside

Definition at line 56 of file SeparatorDualHelper.h.

◆ nodes

std::unordered_set<node> ogdf::planar_separator::SeparatorDualHelper::CycleData::nodes

Definition at line 61 of file SeparatorDualHelper.h.


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