Package org.apache.lucene.util.bkd
Class BKDRadixSelector
- java.lang.Object
-
- org.apache.lucene.util.bkd.BKDRadixSelector
-
public final class BKDRadixSelector extends Object
Offline Radix selector for BKD tree.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBKDRadixSelector.PathSliceSliced reference to points in an PointWriter.
-
Constructor Summary
Constructors Constructor Description BKDRadixSelector(int numDataDims, int numIndexDims, int bytesPerDim, int maxPointsSortInHeap, Directory tempDir, String tempFileNamePrefix)Sole constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidheapRadixSort(HeapPointWriter points, int from, int to, int dim, int commonPrefixLength)Sort the heap writer by the specified dim.byte[]select(BKDRadixSelector.PathSlice points, BKDRadixSelector.PathSlice[] partitionSlices, long from, long to, long partitionPoint, int dim, int dimCommonPrefix)It uses the providedpointsfrom the givenfromto the giventoto populate thepartitionSlicesarray holder (length > 1) with two path slices so the path slice at position 0 containspartition - frompoints where the value of thedimis lower or equal to theto -frompoints on the slice at position 1.
-
-
-
Method Detail
-
select
public byte[] select(BKDRadixSelector.PathSlice points, BKDRadixSelector.PathSlice[] partitionSlices, long from, long to, long partitionPoint, int dim, int dimCommonPrefix) throws IOException
It uses the providedpointsfrom the givenfromto the giventoto populate thepartitionSlicesarray holder (length > 1) with two path slices so the path slice at position 0 containspartition - frompoints where the value of thedimis lower or equal to theto -frompoints on the slice at position 1. ThedimCommonPrefixprovides a hint for the length of the common prefix length for thedimwhere are partitioning the points. It return the value of thedimat the partition point. If the providedpointsis wrapping anOfflinePointWriter, the writer is destroyed in the process to save disk space.- Throws:
IOException
-
heapRadixSort
public void heapRadixSort(HeapPointWriter points, int from, int to, int dim, int commonPrefixLength)
Sort the heap writer by the specified dim. It is used to sort the leaves of the tree
-
-