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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Query.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 QUERY_H
8 #define QUERY_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene {
13 
31 class LPPAPI Query : public LuceneObject {
32 public:
33  Query();
34  virtual ~Query();
35 
37 
38 protected:
39  double boost; // query boost factor
40 
41 public:
44  virtual void setBoost(double b);
45 
48  virtual double getBoost();
49 
61  virtual String toString(const String& field);
62 
64  virtual String toString();
65 
68  virtual WeightPtr createWeight(const SearcherPtr& searcher);
69 
71  virtual WeightPtr weight(const SearcherPtr& searcher);
72 
75  virtual QueryPtr rewrite(const IndexReaderPtr& reader);
76 
84  virtual QueryPtr combine(Collection<QueryPtr> queries);
85 
88  virtual void extractTerms(SetTerm terms);
89 
93  static QueryPtr mergeBooleanQueries(Collection<BooleanQueryPtr> queries);
94 
98  virtual SimilarityPtr getSimilarity(const SearcherPtr& searcher);
99 
101  virtual LuceneObjectPtr clone(const LuceneObjectPtr& other = LuceneObjectPtr());
102 
103  virtual int32_t hashCode();
104  virtual bool equals(const LuceneObjectPtr& other);
105 
107  String boostString();
108 };
109 
110 }
111 
112 #endif

clucene.sourceforge.net