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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Weight.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 WEIGHT_H
8 #define WEIGHT_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene
13 {
30  class LPPAPI Weight : public LuceneObject
31  {
32  public:
33  virtual ~Weight();
35 
36  public:
41  virtual ExplanationPtr explain(IndexReaderPtr reader, int32_t doc) = 0;
42 
44  virtual QueryPtr getQuery() = 0;
45 
47  virtual double getValue() = 0;
48 
50  virtual void normalize(double norm) = 0;
51 
69  virtual ScorerPtr scorer(IndexReaderPtr reader, bool scoreDocsInOrder, bool topScorer) = 0;
70 
72  virtual double sumOfSquaredWeights() = 0;
73 
80  virtual bool scoresDocsOutOfOrder();
81  };
82 }
83 
84 #endif

clucene.sourceforge.net