38namespace fast_multipole_embedder {
121 if (a < 0)
return 64;
Definition of utility functions for FME layout.
Declaration of class LinearQuadtree.
the builder for the LinearQuadtree
uint32_t CAL(LinearQuadtree::PointID a, LinearQuadtree::PointID b)
returns the level of the first common ancestor of a and b
void mergeWithNext(LinearQuadtree::NodeID curr)
merges the node curr with curr's next node by appending the next nodes children to curr except the fi...
void restorePushBackChain(LinearQuadtree::NodeID curr)
used by restore chain
LinearQuadtree::NodeID buildHierarchy(LinearQuadtree::NodeID curr, uint32_t maxLevel)
the new link-only recursive builder
LinearQuadtreeBuilder(LinearQuadtree &treeRef)
constructor
LinearQuadtree::PointID n
void prepareTree(LinearQuadtree::PointID begin, LinearQuadtree::PointID end)
prepares the node and leaf layer from position begin until end (excluding end)
void prepareTree()
prepares the node and leaf layer for the complete tree from 0 to n (excluding n)
void restoreChain(LinearQuadtree::NodeID curr)
void prepareNodeAndLeaf(LinearQuadtree::PointID leafPos, LinearQuadtree::PointID nextLeafPos)
prepares the node and leaf layer at position leafPos where nextLeafPos is the next position
LinearQuadtree::NodeID lastInner
LinearQuadtree::NodeID firstLeaf
LinearQuadtree::NodeID lastLeaf
void buildHierarchy()
the main function for the new link-only recursive builder
void build()
the main build call
LinearQuadtree::NodeID restoreChainLastNode
LinearQuadtree::NodeID firstInner
void setFirstPoint(NodeID nodeID, PointID firstPoint)
PointID firstPoint(NodeID nodeID) const
uint32_t numberOfChilds(NodeID nodeID) const
returns the number of children of node nodeID. for an inner node this is 1..4 and can be accessed by ...
NodeID child(NodeID nodeID, uint32_t i) const
returns the i th child index of node nodeID
void setNumberOfPoints(NodeID nodeID, uint32_t numPoints)
sets the number of nodes containted in node nodeID
NodeID root() const
returns the index of the root
bool isLeaf(NodeID nodeID) const
returns true if the given node index is a leaf
MortonNR mortonNr(PointID point) const
void setNextNode(NodeID nodeID, NodeID next)
uint32_t numberOfPoints(NodeID nodeID) const
returns the number of points contained in the subtree of node nodeID
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
uint32_t mostSignificantBit(T n)
returns the index of the most signficant bit set. 0 = most signif, bitlength-1 = least signif
The namespace for all OGDF objects.