Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::PALabel Class Reference

auxiliary class for the planar augmentation algorithm More...

#include <ogdf/augmentation/planar/PALabel.h>

Public Types

enum  StopCause { StopCause::Planarity, StopCause::CDegree, StopCause::BDegree, StopCause::Root }
 

Public Member Functions

 PALabel (node parent, node cutvertex, StopCause sc=StopCause::BDegree)
 
void addPendant (node pendant)
 
void deleteAllPendants ()
 
node getFirstPendant ()
 
node getLastPendant ()
 
node getPendant (int nr)
 return pendant with number nr, starts counting at 0 More...
 
node head ()
 returns the head node More...
 
bool isBLabel ()
 
bool isCLabel ()
 
node parent ()
 return the parent node. If the label is a c-label it returns m_head More...
 
void removeFirstPendant ()
 
void removePendant (ListIterator< node > it)
 
void removePendant (node pendant)
 
void setHead (node newHead)
 
void setParent (node newParent)
 
int size ()
 return number of pendants More...
 
StopCause stopCause ()
 
void stopCause (StopCause sc)
 

Private Attributes

node m_head
 the cutvertex and perhaps (see m_parent) the parent node More...
 
node m_parent
 the "parent" of the pendants in the BC-Tree, m_parent is a b-vertex or a c-vertex if it is a b-vertex m_parent != 0 otherwise m_parent == 0 and the parent is the head node m_head is always != 0 More...
 
List< nodem_pendants
 list with all pendants of the label More...
 
StopCause m_stopCause
 the stop cause that occurs when traversing from the pendants to the bc-tree-root computed in PlanarAugmentation::followPath() More...
 

Friends

class PlanarAugmentation
 
class PlanarAugmentationFix
 

Detailed Description

auxiliary class for the planar augmentation algorithm

A label contains several pendants, a parent- and a head- node. The head node is a cutvertex in the correspondign BC-Tree. The pendants can be connected by edges so planarity is maintained.

Definition at line 45 of file PALabel.h.

Member Enumeration Documentation

◆ StopCause

Enumerator
Planarity 
CDegree 
BDegree 
Root 

Definition at line 50 of file PALabel.h.

Constructor & Destructor Documentation

◆ PALabel()

ogdf::PALabel::PALabel ( node  parent,
node  cutvertex,
StopCause  sc = StopCause::BDegree 
)
inline

Definition at line 52 of file PALabel.h.

Member Function Documentation

◆ addPendant()

void ogdf::PALabel::addPendant ( node  pendant)
inline

Definition at line 82 of file PALabel.h.

◆ deleteAllPendants()

void ogdf::PALabel::deleteAllPendants ( )
inline

Definition at line 84 of file PALabel.h.

◆ getFirstPendant()

node ogdf::PALabel::getFirstPendant ( )
inline

Definition at line 65 of file PALabel.h.

◆ getLastPendant()

node ogdf::PALabel::getLastPendant ( )
inline

Definition at line 67 of file PALabel.h.

◆ getPendant()

node ogdf::PALabel::getPendant ( int  nr)
inline

return pendant with number nr, starts counting at 0

Definition at line 63 of file PALabel.h.

◆ head()

node ogdf::PALabel::head ( )
inline

returns the head node

Definition at line 90 of file PALabel.h.

◆ isBLabel()

bool ogdf::PALabel::isBLabel ( )
inline

Definition at line 58 of file PALabel.h.

◆ isCLabel()

bool ogdf::PALabel::isCLabel ( )
inline

Definition at line 60 of file PALabel.h.

◆ parent()

node ogdf::PALabel::parent ( )
inline

return the parent node. If the label is a c-label it returns m_head

Definition at line 87 of file PALabel.h.

◆ removeFirstPendant()

void ogdf::PALabel::removeFirstPendant ( )
inline

Definition at line 76 of file PALabel.h.

◆ removePendant() [1/2]

void ogdf::PALabel::removePendant ( ListIterator< node it)
inline

Definition at line 74 of file PALabel.h.

◆ removePendant() [2/2]

void ogdf::PALabel::removePendant ( node  pendant)

◆ setHead()

void ogdf::PALabel::setHead ( node  newHead)
inline

Definition at line 94 of file PALabel.h.

◆ setParent()

void ogdf::PALabel::setParent ( node  newParent)
inline

Definition at line 92 of file PALabel.h.

◆ size()

int ogdf::PALabel::size ( )
inline

return number of pendants

Definition at line 70 of file PALabel.h.

◆ stopCause() [1/2]

StopCause ogdf::PALabel::stopCause ( )
inline

Definition at line 96 of file PALabel.h.

◆ stopCause() [2/2]

void ogdf::PALabel::stopCause ( StopCause  sc)
inline

Definition at line 98 of file PALabel.h.

Friends And Related Function Documentation

◆ PlanarAugmentation

friend class PlanarAugmentation
friend

Definition at line 46 of file PALabel.h.

◆ PlanarAugmentationFix

friend class PlanarAugmentationFix
friend

Definition at line 47 of file PALabel.h.

Member Data Documentation

◆ m_head

node ogdf::PALabel::m_head
private

the cutvertex and perhaps (see m_parent) the parent node

Definition at line 111 of file PALabel.h.

◆ m_parent

node ogdf::PALabel::m_parent
private

the "parent" of the pendants in the BC-Tree, m_parent is a b-vertex or a c-vertex if it is a b-vertex m_parent != 0 otherwise m_parent == 0 and the parent is the head node m_head is always != 0

Definition at line 109 of file PALabel.h.

◆ m_pendants

List<node> ogdf::PALabel::m_pendants
private

list with all pendants of the label

Definition at line 113 of file PALabel.h.

◆ m_stopCause

StopCause ogdf::PALabel::m_stopCause
private

the stop cause that occurs when traversing from the pendants to the bc-tree-root computed in PlanarAugmentation::followPath()

Definition at line 117 of file PALabel.h.


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