For a LeftBranch, all its children are more specific
-- they are instances of LeftChild and thus support
order intervals.
For a LeftBranch, all its children are more specific
-- they are instances of LeftChild and thus support
order intervals.
Returns the hyper-cube covered by this node
Returns the hyper-cube covered by this node
Called when a leaf has been removed from the node.
Called when a leaf has been removed from the node. The node may need to cleanup after this, e.g. promote an underfull node upwards.
A marker in the in-order list corresponding to the beginning of the objects 'interval'.
A marker in the in-order list corresponding to
the beginning of the objects 'interval'. That is
to say, if this object is a leaf, this marker is
the leaf's position in the in-order list. If this
object is a node, all children of the node's subtree
appear right to this marker in the in-order. Thus
the startOrder and stopOrder form the interval
borders of the sub-tree.
Returns the child for a given orthant index
Returns the child for a given orthant index
Assuming that the given leaf is a child of this node,
removes the child from this node's children.
Assuming that the given leaf is a child of this node,
removes the child from this node's children. This method
will perform further clean-up such as merging this node
with its parent if it becomes uninteresting as part of the
removal.
Returns the corresponding interesting
node in Qi+1, or empty if no such
node exists.
Returns the corresponding interesting
node in Qi+1, or empty if no such
node exists.
Sets the corresponding interesting node in Qi+1.
Sets the corresponding interesting node in Qi+1.
Queries the orthant index for this (leaf's or node's) hyper-cube
with respect to a given outer hyper-cube iq.
Queries the orthant index for this (leaf's or node's) hyper-cube
with respect to a given outer hyper-cube iq.
The stop-order of a left node is now always implicitly defined.
The stop-order of a left node is now always implicitly defined.
It is not a real entry in the total-order. Instead it is either
the start-order, if the node is empty, otherwise the stop-order
of the right-most non-empty child of the node. Since only append
is used on the order entries, this totally suffices for maintaining
the tree's binarization.
Computes the greatest interesting hyper-cube within
a given hyper-cube mq so that this (leaf's or node's)
hyper-cube and the given point will be placed in
separated orthants of this resulting hyper-cube.
Computes the greatest interesting hyper-cube within
a given hyper-cube mq so that this (leaf's or node's)
hyper-cube and the given point will be placed in
separated orthants of this resulting hyper-cube.
A left tree node implementation provides more specialized child nodes of type
LeftChild. It furthermore defines a resolution methodfindImmediateLeafwhich is typically called after arriving here from afindP0call.