de.lmu.ifi.dbs.elki.index.tree.metrical.mtreevariants.mktrees.mktab
Class MkTabTreeNode<O,D extends Distance<D>>
java.lang.Object
de.lmu.ifi.dbs.elki.persistent.AbstractPage
de.lmu.ifi.dbs.elki.index.tree.AbstractNode<E>
de.lmu.ifi.dbs.elki.index.tree.metrical.mtreevariants.AbstractMTreeNode<O,D,MkTabTreeNode<O,D>,MkTabEntry<D>>
de.lmu.ifi.dbs.elki.index.tree.metrical.mtreevariants.mktrees.mktab.MkTabTreeNode<O,D>
- Type Parameters:
O
- object typeD
- distance type
- All Implemented Interfaces:
- Node<MkTabEntry<D>>, Page, Externalizable, Serializable
class MkTabTreeNode<O,D extends Distance<D>>
- extends AbstractMTreeNode<O,D,MkTabTreeNode<O,D>,MkTabEntry<D>>
Represents a node in a MkMax-Tree.
Constructor Summary |
MkTabTreeNode()
Empty constructor for Externalizable interface. |
MkTabTreeNode(int capacity,
boolean isLeaf)
Creates a MkTabTreeNode object. |
Method Summary |
void |
adjustEntry(MkTabEntry<D> entry,
DBID routingObjectID,
D parentDistance,
AbstractMTree<O,D,MkTabTreeNode<O,D>,MkTabEntry<D>> mTree)
Adjusts the parameters of the entry representing this node (e.g. after
insertion of new objects). |
protected void |
integrityCheckParameters(MkTabEntry<D> parentEntry,
MkTabTreeNode<O,D> parent,
int index,
AbstractMTree<O,D,MkTabTreeNode<O,D>,MkTabEntry<D>> mTree)
Tests, if the parameters of the entry representing this node, are correctly
set. |
protected List<D> |
kNNDistances(DistanceQuery<O,D> distanceFunction)
Determines and returns the knn distance of this node as the maximum knn
distance of all entries. |
Methods inherited from class de.lmu.ifi.dbs.elki.index.tree.AbstractNode |
addDirectoryEntry, addLeafEntry, children, deleteAllEntries, deleteEntry, equals, getCapacity, getEntries, getEntry, getNumEntries, isLeaf, readExternal, splitTo, splitTo, toString, writeExternal |
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
MkTabTreeNode
public MkTabTreeNode()
- Empty constructor for Externalizable interface.
MkTabTreeNode
public MkTabTreeNode(int capacity,
boolean isLeaf)
- Creates a MkTabTreeNode object.
- Parameters:
capacity
- the capacity (maximum number of entries plus 1 for
overflow) of this nodeisLeaf
- indicates whether this node is a leaf node
kNNDistances
protected List<D> kNNDistances(DistanceQuery<O,D> distanceFunction)
- Determines and returns the knn distance of this node as the maximum knn
distance of all entries.
- Parameters:
distanceFunction
- the distance function
- Returns:
- the knn distance of this node
adjustEntry
public void adjustEntry(MkTabEntry<D> entry,
DBID routingObjectID,
D parentDistance,
AbstractMTree<O,D,MkTabTreeNode<O,D>,MkTabEntry<D>> mTree)
- Description copied from class:
AbstractMTreeNode
- Adjusts the parameters of the entry representing this node (e.g. after
insertion of new objects). Subclasses may need to overwrite this method.
- Overrides:
adjustEntry
in class AbstractMTreeNode<O,D extends Distance<D>,MkTabTreeNode<O,D extends Distance<D>>,MkTabEntry<D extends Distance<D>>>
- Parameters:
entry
- the entry representing this noderoutingObjectID
- the id of the (new) routing object of this nodeparentDistance
- the distance from the routing object of this node to
the routing object of the parent nodemTree
- the M-Tree object holding this node
integrityCheckParameters
protected void integrityCheckParameters(MkTabEntry<D> parentEntry,
MkTabTreeNode<O,D> parent,
int index,
AbstractMTree<O,D,MkTabTreeNode<O,D>,MkTabEntry<D>> mTree)
- Tests, if the parameters of the entry representing this node, are correctly
set. Subclasses may need to overwrite this method.
- Overrides:
integrityCheckParameters
in class AbstractMTreeNode<O,D extends Distance<D>,MkTabTreeNode<O,D extends Distance<D>>,MkTabEntry<D extends Distance<D>>>
- Parameters:
parent
- the parent holding the entry representing this nodeindex
- the index of the entry in the parents child arraymTree
- the underlying M-TreeparentEntry
- the entry representing the parent