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


Loading...
Searching...
No Matches
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
12namespace Lucene {
13
31class LPPAPI Query : public LuceneObject {
32public:
34 virtual ~Query();
35
37
38protected:
39 double boost; // query boost factor
40
41public:
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
85
88 virtual void extractTerms(SetTerm terms);
89
94
98 virtual SimilarityPtr getSimilarity(const SearcherPtr& searcher);
99
102
103 virtual int32_t hashCode();
104 virtual bool equals(const LuceneObjectPtr& other);
105
107 String boostString();
108};
109
110}
111
112#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
Base class for all Lucene classes.
Definition LuceneObject.h:31
The abstract base class for queries.
Definition Query.h:31
double boost
Definition Query.h:39
virtual ~Query()
virtual SimilarityPtr getSimilarity(const SearcherPtr &searcher)
Returns the Similarity implementation to be used for this query. Subclasses may override this method ...
virtual LuceneObjectPtr clone(const LuceneObjectPtr &other=LuceneObjectPtr())
Returns a clone of this query.
static QueryPtr mergeBooleanQueries(Collection< BooleanQueryPtr > queries)
Merges the clauses of a set of BooleanQuery's into a single BooleanQuery.
virtual bool equals(const LuceneObjectPtr &other)
Return whether two objects are equal.
virtual String toString()
Prints a query to a string.
virtual int32_t hashCode()
Return hash code for this object.
virtual QueryPtr rewrite(const IndexReaderPtr &reader)
Called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into ...
virtual void extractTerms(SetTerm terms)
Adds all terms occurring in this query to the terms set. Only works if this query is in its rewritten...
virtual String toString(const String &field)
Prints a query to a string, with field assumed to be the default field and omitted.
String boostString()
Return given boost value as a string.
virtual WeightPtr weight(const SearcherPtr &searcher)
Constructs and initializes a Weight for a top-level query.
virtual QueryPtr combine(Collection< QueryPtr > queries)
Called when re-writing queries under MultiSearcher.
virtual double getBoost()
Gets the boost for this clause. Documents matching this clause will (in addition to the normal weight...
virtual WeightPtr createWeight(const SearcherPtr &searcher)
Constructs an appropriate Weight implementation for this query. Only implemented by primitive queries...
virtual void setBoost(double b)
Sets the boost for this query clause to b. Documents matching this clause will (in addition to the no...
Definition AbstractAllTermDocs.h:12
boost::shared_ptr< LuceneObject > LuceneObjectPtr
Definition LuceneTypes.h:539
boost::shared_ptr< Query > QueryPtr
Definition LuceneTypes.h:420
boost::shared_ptr< Searcher > SearcherPtr
Definition LuceneTypes.h:434
boost::shared_ptr< Similarity > SimilarityPtr
Definition LuceneTypes.h:435
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition LuceneTypes.h:157
boost::shared_ptr< Weight > WeightPtr
Definition LuceneTypes.h:480

clucene.sourceforge.net