Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

PlanarPQTree.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/Graph.h>
35 #include <ogdf/basic/PQTree.h>
36 #include <ogdf/basic/SList.h>
39 
40 namespace ogdf {
41 namespace booth_lueker {
42 
43 class PlanarPQTree : public PQTree<edge, IndInfo*, bool> {
44 public:
45  PlanarPQTree() : PQTree<edge, IndInfo*, bool>() { }
46 
47  virtual ~PlanarPQTree() { }
48 
50  virtual void emptyAllPertinentNodes() override;
51 
53  virtual int Initialize(SListPure<PlanarLeafKey<IndInfo*>*>& leafKeys);
54 
57  }
58 
61 
63  virtual bool Reduction(SListPure<PlanarLeafKey<IndInfo*>*>& leafKeys);
64 
67  }
68 
69 private:
72 
75 };
76 
77 }
78 }
ogdf
The namespace for all OGDF objects.
Definition: AugmentationModule.h:36
IndInfo.h
Declaration of the class EmbedKey.
Graph.h
Includes declaration of graph class.
ogdf::PQLeafKey
The class template PQLeafKey is a derived class of class template PQBasicKey.
Definition: PQLeafKey.h:87
ogdf::PQTree
Definition: PQNode.h:46
ogdf::booth_lueker::PlanarPQTree::Reduction
virtual bool Reduction(SListPure< PlanarLeafKey< IndInfo * > * > &leafKeys)
Reduces a set of leaves.
ogdf::booth_lueker::PlanarPQTree::PlanarPQTree
PlanarPQTree()
Definition: PlanarPQTree.h:45
PQTree.h
Declaration and implementation of the class PQTree.
ogdf::booth_lueker::PlanarPQTree
Definition: PlanarPQTree.h:43
ogdf::booth_lueker::IndInfo
Definition: IndInfo.h:41
ogdf::booth_lueker::PlanarPQTree::~PlanarPQTree
virtual ~PlanarPQTree()
Definition: PlanarPQTree.h:47
ogdf::booth_lueker::PlanarPQTree::ReplacePartialRoot
void ReplacePartialRoot(SListPure< PlanarLeafKey< IndInfo * > * > &leafKeys)
Replaces a pertinet subtree by a set of new leaves if the root is partial.
ogdf::booth_lueker::PlanarPQTree::ReplaceRoot
void ReplaceRoot(SListPure< PlanarLeafKey< IndInfo * > * > &leafKeys)
Replaces the pertinent subtree by a set of new leaves.
SList.h
Declaration of singly linked lists and iterators.
ogdf::SListPure
Singly linked lists.
Definition: SList.h:39
ogdf::PQTree::Initialize
virtual int Initialize(SListPure< PQLeafKey< T, X, Y > * > &leafKeys)
Initializes the PQ-tree with a set of elements.
Definition: PQTree.h:1909
ogdf::booth_lueker::PlanarPQTree::emptyAllPertinentNodes
virtual void emptyAllPertinentNodes() override
Does a clean up after a reduction.
ogdf::EdgeElement
Class for the representation of edges.
Definition: Graph_d.h:356
ogdf::PQTree::Reduction
virtual bool Reduction(SListPure< PQLeafKey< T, X, Y > * > &leafKeys)
Tests whether permissible permutations of the elements of U exist such that the elements of a subset ...
Definition: PQTree.h:2230
ogdf::booth_lueker::PlanarLeafKey
Definition: PlanarLeafKey.h:41
PlanarLeafKey.h
Declaration of class PlanarLeafKey.
ogdf::booth_lueker::PlanarPQTree::Initialize
virtual int Initialize(SListPure< PlanarLeafKey< IndInfo * > * > &leafKeys)
Initializes a new PQ-tree with a set of leaves.
ogdf::booth_lueker::PlanarPQTree::Initialize
int Initialize(SListPure< PQLeafKey< edge, IndInfo *, bool > * > &leafKeys) override
Definition: PlanarPQTree.h:55
ogdf::booth_lueker::PlanarPQTree::Reduction
bool Reduction(SListPure< PQLeafKey< edge, IndInfo *, bool > * > &leafKeys) override
Definition: PlanarPQTree.h:65
ogdf::booth_lueker::PlanarPQTree::ReplaceFullRoot
void ReplaceFullRoot(SListPure< PlanarLeafKey< IndInfo * > * > &leafKeys)
Replaces a pertinet subtree by a set of new leaves if the root is full.