Interface ISplitFunction<T>
- Type Parameters:
T
- The type of the data objects.
- All Known Implementing Classes:
ComposedSplitFunction
public interface ISplitFunction<T>
Defines an object to be used to split a node in an M-Tree. A node must be
split when it has reached its maximum capacity and a new child node would be
added to it.
The splitting consists in choosing a pair of "promoted" data objects from the children and then partition the set of children in two partitions corresponding to the two promoted data objects.
- Since:
- 2.0.0
- Author:
- Eduardo R. D'Avila
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ISplitFunction.SplitResult<R>
An object used as the result for theprocess(Set, IDistanceFunction)
method. -
Method Summary
Modifier and Type Method Description ISplitFunction.SplitResult<T>
process(java.util.Set<T> dataSet, IDistanceFunction<? super T> distanceFunction)
Processes the splitting of a node.
-
Method Details
-
process
ISplitFunction.SplitResult<T> process(java.util.Set<T> dataSet, IDistanceFunction<? super T> distanceFunction)Processes the splitting of a node.- Parameters:
dataSet
- A set of data that are keys to the children of the node to be split.distanceFunction
- A distance function that can be used to help splitting the node.- Returns:
- A
ISplitFunction.SplitResult
object with a pair of promoted data objects and a pair of corresponding partitions of the data objects.
-