Package org.apache.lucene.document
Class LatLonPointDistanceFeatureQuery.DistanceScorer
- java.lang.Object
-
- org.apache.lucene.search.Scorable
-
- org.apache.lucene.search.Scorer
-
- org.apache.lucene.document.LatLonPointDistanceFeatureQuery.DistanceScorer
-
- Enclosing class:
- LatLonPointDistanceFeatureQuery
private class LatLonPointDistanceFeatureQuery.DistanceScorer extends Scorer
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.search.Scorable
Scorable.ChildScorable
-
-
Field Summary
Fields Modifier and Type Field Description private floatboostprivate intdocprivate NumericDocValuesdocValuesprivate DocIdSetIteratoritprivate longleadCostprivate doublemaxDistanceprivate intmaxDocprivate PointValuespointValuesprivate intsetMinCompetitiveScoreCounter
-
Constructor Summary
Constructors Modifier Constructor Description protectedDistanceScorer(Weight weight, int maxDoc, long leadCost, float boost, PointValues pointValues, NumericDocValues docValues)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private doublecomputeMaxDistance(float minScore, double previousMaxDistance)Inverting the score computation is very hard due to all potential rounding errors, so we binary search the maximum distance.intdocID()Returns the doc ID that is currently being scored.floatgetMaxScore(int upTo)Return the maximum score that documents between the lasttargetthat this iterator wasshallow-advancedto included andupToincluded.DocIdSetIteratoriterator()Return aDocIdSetIteratorover matching documents.floatscore()Returns the score of the current document matching the query.private floatscore(double distance)voidsetMinCompetitiveScore(float minScore)Optional method: Tell the scorer that its iterator may safely ignore all documents whose score is less than the givenminScore.-
Methods inherited from class org.apache.lucene.search.Scorer
advanceShallow, getWeight, twoPhaseIterator
-
Methods inherited from class org.apache.lucene.search.Scorable
getChildren
-
-
-
-
Field Detail
-
maxDoc
private final int maxDoc
-
it
private DocIdSetIterator it
-
doc
private int doc
-
leadCost
private final long leadCost
-
boost
private final float boost
-
pointValues
private final PointValues pointValues
-
docValues
private final NumericDocValues docValues
-
maxDistance
private double maxDistance
-
setMinCompetitiveScoreCounter
private int setMinCompetitiveScoreCounter
-
-
Constructor Detail
-
DistanceScorer
protected DistanceScorer(Weight weight, int maxDoc, long leadCost, float boost, PointValues pointValues, NumericDocValues docValues)
-
-
Method Detail
-
docID
public int docID()
Description copied from class:ScorableReturns the doc ID that is currently being scored.
-
score
private float score(double distance)
-
computeMaxDistance
private double computeMaxDistance(float minScore, double previousMaxDistance)Inverting the score computation is very hard due to all potential rounding errors, so we binary search the maximum distance. The limit is set to 1 meter.
-
score
public float score() throws java.io.IOExceptionDescription copied from class:ScorableReturns the score of the current document matching the query.
-
iterator
public DocIdSetIterator iterator()
Description copied from class:ScorerReturn aDocIdSetIteratorover matching documents. The returned iterator will either be positioned on-1if no documents have been scored yet,DocIdSetIterator.NO_MORE_DOCSif all documents have been scored already, or the last document id that has been scored otherwise. The returned iterator is a view: calling this method several times will return iterators that have the same state.
-
getMaxScore
public float getMaxScore(int upTo)
Description copied from class:ScorerReturn the maximum score that documents between the lasttargetthat this iterator wasshallow-advancedto included andupToincluded.- Specified by:
getMaxScorein classScorer
-
setMinCompetitiveScore
public void setMinCompetitiveScore(float minScore) throws java.io.IOExceptionDescription copied from class:ScorableOptional method: Tell the scorer that its iterator may safely ignore all documents whose score is less than the givenminScore. This is a no-op by default. This method may only be called from collectors that useScoreMode.TOP_SCORES, and successive calls may only set increasing values ofminScore.- Overrides:
setMinCompetitiveScorein classScorable- Throws:
java.io.IOException
-
-