Package elki.database.query.distance
Class LinearScanPrioritySearcher<Q,O>
- java.lang.Object
-
- elki.database.query.distance.LinearScanPrioritySearcher<Q,O>
-
- Type Parameters:
Q- Query typeO- Relation object type
- All Implemented Interfaces:
elki.database.ids.DBIDIter,elki.database.ids.DBIDRef,elki.database.query.knn.KNNSearcher<Q>,elki.database.query.LinearScanQuery,elki.database.query.PrioritySearcher<Q>,elki.database.query.range.RangeSearcher<Q>,elki.utilities.datastructures.iterator.Iter
- Direct Known Subclasses:
LinearScanPrioritySearcher.ByDBID,LinearScanPrioritySearcher.ByObject
public abstract class LinearScanPrioritySearcher<Q,O> extends java.lang.Object implements elki.database.query.PrioritySearcher<Q>, elki.database.query.LinearScanQueryDefault linear scan search class.This is a fallback option - results are not returned in order, and (as always) may exceed the given cutoff threshold.
- Since:
- 0.4.0
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLinearScanPrioritySearcher.ByDBID<O>Search by DBID.static classLinearScanPrioritySearcher.ByObject<O>Search by Object.
-
Constructor Summary
Constructors Constructor Description LinearScanPrioritySearcher(elki.database.query.distance.DistanceQuery<O> distanceQuery)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description elki.database.query.PrioritySearcher<Q>advance()doubleallLowerBound()doublecomputeExactDistance()elki.database.query.PrioritySearcher<Q>decreaseCutoff(double threshold)doublegetApproximateAccuracy()doublegetApproximateDistance()doublegetLowerBound()doublegetUpperBound()intinternalGetIndex()protected elki.database.query.PrioritySearcher<Q>realSearch(O query)Implementation of the search function.booleanvalid()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Constructor Detail
-
LinearScanPrioritySearcher
public LinearScanPrioritySearcher(elki.database.query.distance.DistanceQuery<O> distanceQuery)
Constructor.- Parameters:
distanceQuery- Distance function to use
-
-
Method Detail
-
realSearch
protected elki.database.query.PrioritySearcher<Q> realSearch(O query)
Implementation of the search function.- Parameters:
query- Query object- Returns:
- this
-
valid
public boolean valid()
- Specified by:
validin interfaceelki.utilities.datastructures.iterator.Iter
-
advance
public elki.database.query.PrioritySearcher<Q> advance()
- Specified by:
advancein interfaceelki.database.ids.DBIDIter- Specified by:
advancein interfaceelki.utilities.datastructures.iterator.Iter- Specified by:
advancein interfaceelki.database.query.PrioritySearcher<Q>
-
internalGetIndex
public int internalGetIndex()
- Specified by:
internalGetIndexin interfaceelki.database.ids.DBIDRef
-
decreaseCutoff
public elki.database.query.PrioritySearcher<Q> decreaseCutoff(double threshold)
- Specified by:
decreaseCutoffin interfaceelki.database.query.PrioritySearcher<Q>
-
computeExactDistance
public double computeExactDistance()
- Specified by:
computeExactDistancein interfaceelki.database.query.PrioritySearcher<Q>
-
getApproximateAccuracy
public double getApproximateAccuracy()
- Specified by:
getApproximateAccuracyin interfaceelki.database.query.PrioritySearcher<Q>
-
getApproximateDistance
public double getApproximateDistance()
- Specified by:
getApproximateDistancein interfaceelki.database.query.PrioritySearcher<Q>
-
getLowerBound
public double getLowerBound()
- Specified by:
getLowerBoundin interfaceelki.database.query.PrioritySearcher<Q>
-
getUpperBound
public double getUpperBound()
- Specified by:
getUpperBoundin interfaceelki.database.query.PrioritySearcher<Q>
-
allLowerBound
public double allLowerBound()
- Specified by:
allLowerBoundin interfaceelki.database.query.PrioritySearcher<Q>
-
-