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


CustomScoreProvider.h
Go to the documentation of this file.
1 // 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 CUSTOMSCOREPROVIDER_H
8 #define CUSTOMSCOREPROVIDER_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene {
13 
21 class LPPAPI CustomScoreProvider : public LuceneObject {
22 public:
24  CustomScoreProvider(const IndexReaderPtr& reader);
25 
26  virtual ~CustomScoreProvider();
27 
29 
30 protected:
31  IndexReaderPtr reader;
32 
33 public:
52  virtual double customScore(int32_t doc, double subQueryScore, Collection<double> valSrcScores);
53 
71  virtual double customScore(int32_t doc, double subQueryScore, double valSrcScore);
72 
80  virtual ExplanationPtr customExplain(int32_t doc, const ExplanationPtr& subQueryExpl, Collection<ExplanationPtr> valSrcExpls);
81 
88  virtual ExplanationPtr customExplain(int32_t doc, const ExplanationPtr& subQueryExpl, const ExplanationPtr& valSrcExpl);
89 };
90 
91 }
92 
93 #endif
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157
boost::shared_ptr< Explanation > ExplanationPtr
Definition: LuceneTypes.h:333
Base class for all Lucene classes.
Definition: LuceneObject.h:31
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: AbstractAllTermDocs.h:12
An instance of this subclass should be returned by CustomScoreQuery#getCustomScoreProvider, if you want to modify the custom score calculation of a CustomScoreQuery.
Definition: CustomScoreProvider.h:21

clucene.sourceforge.net