
public class LinearScanPrimitiveDistanceKNNQuery<O,D extends Distance<D>> extends LinearScanKNNQuery<O,D>
distanceQueryrelationHINT_BULK, HINT_EXACT, HINT_HEAVY_USE, HINT_NO_CACHE, HINT_OPTIMIZED_ONLY, HINT_SINGLE| Constructor and Description |
|---|
LinearScanPrimitiveDistanceKNNQuery(PrimitiveDistanceQuery<O,D> distanceQuery)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
List<KNNResult<D>> |
getKNNForBulkDBIDs(ArrayDBIDs ids,
int k)
Bulk query method
|
void |
getKNNForBulkHeaps(Map<DBID,KNNHeap<D>> heaps)
Bulk query method configured by a map.
|
KNNResult<D> |
getKNNForDBID(DBIDRef id,
int k)
Get the k nearest neighbors for a particular id.
|
protected void |
linearScanBatchKNN(List<O> objs,
List<KNNHeap<D>> heaps)
Perform a linear scan batch kNN for primitive distance functions.
|
getKNNForObjectgetRelationpublic LinearScanPrimitiveDistanceKNNQuery(PrimitiveDistanceQuery<O,D> distanceQuery)
distanceQuery - Distance function to useprotected void linearScanBatchKNN(List<O> objs, List<KNNHeap<D>> heaps)
objs - Objects listheaps - Heaps arraypublic KNNResult<D> getKNNForDBID(DBIDRef id, int k)
KNNQuerygetKNNForDBID in interface KNNQuery<O,D extends Distance<D>>getKNNForDBID in class LinearScanKNNQuery<O,D extends Distance<D>>id - query object IDk - Number of neighbors requestedpublic List<KNNResult<D>> getKNNForBulkDBIDs(ArrayDBIDs ids, int k)
KNNQuerygetKNNForBulkDBIDs in interface KNNQuery<O,D extends Distance<D>>getKNNForBulkDBIDs in class LinearScanKNNQuery<O,D extends Distance<D>>ids - query object IDsk - Number of neighbors requestedpublic void getKNNForBulkHeaps(Map<DBID,KNNHeap<D>> heaps)
KNNQuerygetKNNForBulkHeaps in interface KNNQuery<O,D extends Distance<D>>getKNNForBulkHeaps in class LinearScanKNNQuery<O,D extends Distance<D>>heaps - Map of heaps to fill.