7#ifndef DISJUNCTIONSUMSCORER_H
8#define DISJUNCTIONSUMSCORER_H
#define LUCENE_CLASS(Name)
Definition LuceneObject.h:24
Utility template class to handle collections that can be safely copied and shared.
Definition Collection.h:17
A Scorer for OR like queries, counterpart of ConjunctionScorer. This Scorer implements Scorer#skipTo(...
Definition DisjunctionSumScorer.h:16
DisjunctionSumScorer(Collection< ScorerPtr > subScorers, int32_t minimumNrMatchers=1)
ScorerDocQueuePtr scorerDocQueue
The scorerDocQueue contains all subscorers ordered by their current doc(), with the minimum at the to...
Definition DisjunctionSumScorer.h:40
int32_t minimumNrMatchers
The minimum number of scorers that should match.
Definition DisjunctionSumScorer.h:31
double currentScore
Definition DisjunctionSumScorer.h:48
int32_t currentDoc
The document number of the current match.
Definition DisjunctionSumScorer.h:43
int32_t _nrMatchers
The number of subscorers that provide the current match.
Definition DisjunctionSumScorer.h:46
virtual double score()
Returns the score of the current document matching the query. Initially invalid, until next() is call...
virtual void score(const CollectorPtr &collector)
Scores and collects all matching documents.
virtual ~DisjunctionSumScorer()
virtual int32_t nextDoc()
Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...
virtual int32_t advance(int32_t target)
Advances to the first match beyond the current whose document number is greater than or equal to a gi...
Collection< ScorerPtr > subScorers
The subscorers.
Definition DisjunctionSumScorer.h:28
int32_t nrMatchers()
Returns the number of subscorers matching the current document. Initially invalid,...
virtual bool score(const CollectorPtr &collector, int32_t max, int32_t firstDocID)
Collects matching documents in a range. Hook for optimization. Note that next() must be called once b...
void initScorerDocQueue()
Called the first time next() or skipTo() is called to initialize scorerDocQueue.
int32_t nrScorers
The number of subscorers.
Definition DisjunctionSumScorer.h:25
virtual void initialize()
Called directly after instantiation to create objects that depend on this object being fully construc...
bool advanceAfterCurrent()
Advance all subscorers after the current document determined by the top of the scorerDocQueue....
virtual int32_t docID()
Returns the following:
Common scoring functionality for different types of queries.
Definition Scorer.h:33
Definition AbstractAllTermDocs.h:12
boost::shared_ptr< ScorerDocQueue > ScorerDocQueuePtr
Definition LuceneTypes.h:549
boost::shared_ptr< Collector > CollectorPtr
Definition LuceneTypes.h:295