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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
DisjunctionSumScorer.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2011 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 
12 namespace Lucene
13 {
17  {
18  public:
20  virtual ~DisjunctionSumScorer();
21 
23 
24  protected:
26  int32_t nrScorers;
27 
30 
33 
42 
44  int32_t currentDoc;
45 
47  int32_t _nrMatchers;
48 
49  double currentScore;
50 
51  public:
52  virtual void initialize();
53 
54  virtual void score(CollectorPtr collector);
55  virtual int32_t nextDoc();
56 
59  virtual double score();
60 
61  virtual int32_t docID();
62 
65  int32_t nrMatchers();
66 
72  virtual int32_t advance(int32_t target);
73 
74  protected:
76  void initScorerDocQueue();
77 
83  virtual bool score(CollectorPtr collector, int32_t max, int32_t firstDocID);
84 
91  bool advanceAfterCurrent();
92  };
93 }
94 
95 #endif

clucene.sourceforge.net