Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::fast_multipole_embedder::LinearQuadtreeBuilder Class Reference

the builder for the LinearQuadtree More...

#include <ogdf/energybased/fast_multipole_embedder/LinearQuadtreeBuilder.h>

Public Member Functions

 LinearQuadtreeBuilder (LinearQuadtree &treeRef)
 constructor More...
 
void build ()
 the main build call More...
 
void buildHierarchy ()
 the main function for the new link-only recursive builder More...
 
LinearQuadtree::NodeID buildHierarchy (LinearQuadtree::NodeID curr, uint32_t maxLevel)
 the new link-only recursive builder More...
 
uint32_t CAL (LinearQuadtree::PointID a, LinearQuadtree::PointID b)
 returns the level of the first common ancestor of a and b More...
 
void mergeWithNext (LinearQuadtree::NodeID curr)
 merges the node curr with curr's next node by appending the next nodes children to curr except the first one. More...
 
void prepareNodeAndLeaf (LinearQuadtree::PointID leafPos, LinearQuadtree::PointID nextLeafPos)
 prepares the node and leaf layer at position leafPos where nextLeafPos is the next position More...
 
void prepareTree ()
 prepares the node and leaf layer for the complete tree from 0 to n (excluding n) More...
 
void prepareTree (LinearQuadtree::PointID begin, LinearQuadtree::PointID end)
 prepares the node and leaf layer from position begin until end (excluding end) More...
 
void restoreChain ()
 
void restoreChain (LinearQuadtree::NodeID curr)
 
void restorePushBackChain (LinearQuadtree::NodeID curr)
 used by restore chain More...
 

Public Attributes

LinearQuadtree::NodeID firstInner
 
LinearQuadtree::NodeID firstLeaf
 
LinearQuadtree::NodeID lastInner
 
LinearQuadtree::NodeID lastLeaf
 
LinearQuadtree::PointID n
 
uint32_t numInnerNodes
 
uint32_t numLeaves
 
LinearQuadtree::NodeID restoreChainLastNode
 
LinearQuadtreetree
 

Detailed Description

the builder for the LinearQuadtree

Definition at line 43 of file LinearQuadtreeBuilder.h.

Constructor & Destructor Documentation

◆ LinearQuadtreeBuilder()

ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::LinearQuadtreeBuilder ( LinearQuadtree treeRef)
inlineexplicit

constructor

Definition at line 46 of file LinearQuadtreeBuilder.h.

Member Function Documentation

◆ build()

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::build ( )

the main build call

◆ buildHierarchy() [1/2]

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::buildHierarchy ( )

the main function for the new link-only recursive builder

◆ buildHierarchy() [2/2]

LinearQuadtree::NodeID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::buildHierarchy ( LinearQuadtree::NodeID  curr,
uint32_t  maxLevel 
)

the new link-only recursive builder

◆ CAL()

uint32_t ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::CAL ( LinearQuadtree::PointID  a,
LinearQuadtree::PointID  b 
)
inline

returns the level of the first common ancestor of a and b

Definition at line 119 of file LinearQuadtreeBuilder.h.

◆ mergeWithNext()

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::mergeWithNext ( LinearQuadtree::NodeID  curr)

merges the node curr with curr's next node by appending the next nodes children to curr except the first one.

◆ prepareNodeAndLeaf()

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::prepareNodeAndLeaf ( LinearQuadtree::PointID  leafPos,
LinearQuadtree::PointID  nextLeafPos 
)

prepares the node and leaf layer at position leafPos where nextLeafPos is the next position

◆ prepareTree() [1/2]

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::prepareTree ( )

prepares the node and leaf layer for the complete tree from 0 to n (excluding n)

◆ prepareTree() [2/2]

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::prepareTree ( LinearQuadtree::PointID  begin,
LinearQuadtree::PointID  end 
)

prepares the node and leaf layer from position begin until end (excluding end)

◆ restoreChain() [1/2]

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::restoreChain ( )
inline

Definition at line 107 of file LinearQuadtreeBuilder.h.

◆ restoreChain() [2/2]

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::restoreChain ( LinearQuadtree::NodeID  curr)
inline

Definition at line 90 of file LinearQuadtreeBuilder.h.

◆ restorePushBackChain()

void ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::restorePushBackChain ( LinearQuadtree::NodeID  curr)
inline

used by restore chain

Definition at line 80 of file LinearQuadtreeBuilder.h.

Member Data Documentation

◆ firstInner

LinearQuadtree::NodeID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::firstInner

Definition at line 132 of file LinearQuadtreeBuilder.h.

◆ firstLeaf

LinearQuadtree::NodeID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::firstLeaf

Definition at line 133 of file LinearQuadtreeBuilder.h.

◆ lastInner

LinearQuadtree::NodeID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::lastInner

Definition at line 135 of file LinearQuadtreeBuilder.h.

◆ lastLeaf

LinearQuadtree::NodeID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::lastLeaf

Definition at line 136 of file LinearQuadtreeBuilder.h.

◆ n

LinearQuadtree::PointID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::n

Definition at line 142 of file LinearQuadtreeBuilder.h.

◆ numInnerNodes

uint32_t ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::numInnerNodes

Definition at line 137 of file LinearQuadtreeBuilder.h.

◆ numLeaves

uint32_t ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::numLeaves

Definition at line 138 of file LinearQuadtreeBuilder.h.

◆ restoreChainLastNode

LinearQuadtree::NodeID ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::restoreChainLastNode

Definition at line 141 of file LinearQuadtreeBuilder.h.

◆ tree

LinearQuadtree& ogdf::fast_multipole_embedder::LinearQuadtreeBuilder::tree

Definition at line 140 of file LinearQuadtreeBuilder.h.


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