Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::pc_tree::PCTree::Observer Struct Reference

Interface for Observers that can be notified of all changes made to the tree during an update. More...

#include <ogdf/basic/pctree/PCTree.h>

+ Inheritance diagram for ogdf::pc_tree::PCTree::Observer:

Public Types

enum  Stage { Stage::Trivial, Stage::NoPartials, Stage::InvalidTP, Stage::SingletonTP, Stage::Done }
 

Public Member Functions

virtual void afterMerge ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *successor, [[maybe_unused]] PCNode *mergedNode)
 
virtual void beforeMerge ([[maybe_unused]] PCTree &tree, [[maybe_unused]] int count, [[maybe_unused]] PCNode *tpNeigh)
 
virtual void centralCreated ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *central)
 
virtual void fullNodeSplit ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *fullNode)
 
virtual void labelsAssigned ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *firstPartial, [[maybe_unused]] PCNode *lastPartial, [[maybe_unused]] int partialCount)
 
virtual void makeConsecutiveCalled ([[maybe_unused]] PCTree &tree, [[maybe_unused]] FullLeafIter consecutiveLeaves)
 
virtual void makeConsecutiveDone ([[maybe_unused]] PCTree &tree, [[maybe_unused]] Stage stage, [[maybe_unused]] bool success)
 
virtual void nodeDeleted ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *toBeDeleted)
 
virtual void nodeReplaced ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *replaced, [[maybe_unused]] PCNode *replacement)
 
virtual void onApexMoved ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *apexCandidate, [[maybe_unused]] PCNode *central, [[maybe_unused]] PCNode *parent)
 
virtual void onNodeCreate ([[maybe_unused]] PCNode *node)
 
virtual void terminalPathFound ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *apex, [[maybe_unused]] PCNode *apexTPPred2, [[maybe_unused]] int terminalPathLength)
 
virtual void whenCNodeMerged ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *tpNeigh, [[maybe_unused]] bool tpNeighSiblingsFlipped, [[maybe_unused]] PCNode *fullNeigh, [[maybe_unused]] PCNode *fullOuterChild)
 
virtual void whenPNodeMerged ([[maybe_unused]] PCTree &tree, [[maybe_unused]] PCNode *tpNeigh, [[maybe_unused]] PCNode *tpPred, [[maybe_unused]] PCNode *fullNeigh)
 

Detailed Description

Interface for Observers that can be notified of all changes made to the tree during an update.

Definition at line 625 of file PCTree.h.

Member Enumeration Documentation

◆ Stage

Enumerator
Trivial 
NoPartials 
InvalidTP 
SingletonTP 
Done 

Definition at line 626 of file PCTree.h.

Member Function Documentation

◆ afterMerge()

virtual void ogdf::pc_tree::PCTree::Observer::afterMerge ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode successor,
[[maybe_unused] ] PCNode mergedNode 
)
inlinevirtual

Definition at line 646 of file PCTree.h.

◆ beforeMerge()

virtual void ogdf::pc_tree::PCTree::Observer::beforeMerge ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] int  count,
[[maybe_unused] ] PCNode tpNeigh 
)
inlinevirtual

Definition at line 643 of file PCTree.h.

◆ centralCreated()

virtual void ogdf::pc_tree::PCTree::Observer::centralCreated ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode central 
)
inlinevirtual

Definition at line 640 of file PCTree.h.

◆ fullNodeSplit()

virtual void ogdf::pc_tree::PCTree::Observer::fullNodeSplit ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode fullNode 
)
inlinevirtual

Definition at line 656 of file PCTree.h.

◆ labelsAssigned()

virtual void ogdf::pc_tree::PCTree::Observer::labelsAssigned ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode firstPartial,
[[maybe_unused] ] PCNode lastPartial,
[[maybe_unused] ] int  partialCount 
)
inlinevirtual

Definition at line 633 of file PCTree.h.

◆ makeConsecutiveCalled()

virtual void ogdf::pc_tree::PCTree::Observer::makeConsecutiveCalled ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] FullLeafIter  consecutiveLeaves 
)
inlinevirtual

Definition at line 630 of file PCTree.h.

◆ makeConsecutiveDone()

virtual void ogdf::pc_tree::PCTree::Observer::makeConsecutiveDone ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] Stage  stage,
[[maybe_unused] ] bool  success 
)
inlinevirtual

Definition at line 659 of file PCTree.h.

◆ nodeDeleted()

virtual void ogdf::pc_tree::PCTree::Observer::nodeDeleted ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode toBeDeleted 
)
inlinevirtual

Definition at line 666 of file PCTree.h.

◆ nodeReplaced()

virtual void ogdf::pc_tree::PCTree::Observer::nodeReplaced ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode replaced,
[[maybe_unused] ] PCNode replacement 
)
inlinevirtual

Definition at line 668 of file PCTree.h.

◆ onApexMoved()

virtual void ogdf::pc_tree::PCTree::Observer::onApexMoved ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode apexCandidate,
[[maybe_unused] ] PCNode central,
[[maybe_unused] ] PCNode parent 
)
inlinevirtual

Definition at line 662 of file PCTree.h.

◆ onNodeCreate()

virtual void ogdf::pc_tree::PCTree::Observer::onNodeCreate ( [[maybe_unused] ] PCNode node)
inlinevirtual

Definition at line 628 of file PCTree.h.

◆ terminalPathFound()

virtual void ogdf::pc_tree::PCTree::Observer::terminalPathFound ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode apex,
[[maybe_unused] ] PCNode apexTPPred2,
[[maybe_unused] ] int  terminalPathLength 
)
inlinevirtual

Definition at line 637 of file PCTree.h.

◆ whenCNodeMerged()

virtual void ogdf::pc_tree::PCTree::Observer::whenCNodeMerged ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode tpNeigh,
[[maybe_unused] ] bool  tpNeighSiblingsFlipped,
[[maybe_unused] ] PCNode fullNeigh,
[[maybe_unused] ] PCNode fullOuterChild 
)
inlinevirtual

Definition at line 652 of file PCTree.h.

◆ whenPNodeMerged()

virtual void ogdf::pc_tree::PCTree::Observer::whenPNodeMerged ( [[maybe_unused] ] PCTree tree,
[[maybe_unused] ] PCNode tpNeigh,
[[maybe_unused] ] PCNode tpPred,
[[maybe_unused] ] PCNode fullNeigh 
)
inlinevirtual

Definition at line 649 of file PCTree.h.


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