Lucene++ - a full-featured, c++ search engine
API Documentation


Loading...
Searching...
No Matches
DisjunctionSumScorer.h
Go to the documentation of this file.
1
2// Copyright (c) 2009-2014 Alan Wright. All rights reserved.
3// Distributable under the terms of either the Apache License (Version 2.0)
4// or the GNU Lesser General Public License.
6
7#ifndef DISJUNCTIONSUMSCORER_H
8#define DISJUNCTIONSUMSCORER_H
9
10#include "Scorer.h"
11
12namespace Lucene {
13
17public:
20
22
23protected:
25 int32_t nrScorers;
26
29
32
41
43 int32_t currentDoc;
44
46 int32_t _nrMatchers;
47
49
50public:
51 virtual void initialize();
52
53 virtual void score(const CollectorPtr& collector);
54 virtual int32_t nextDoc();
55
58 virtual double score();
59
60 virtual int32_t docID();
61
64 int32_t nrMatchers();
65
71 virtual int32_t advance(int32_t target);
72
73protected:
76
82 virtual bool score(const CollectorPtr& collector, int32_t max, int32_t firstDocID);
83
91};
92
93}
94
95#endif
#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 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

clucene.sourceforge.net