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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Searcher.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 SEARCHER_H
8 #define SEARCHER_H
9 
10 #include "Searchable.h"
11 
12 namespace Lucene {
13 
18 class LPPAPI Searcher : public Searchable, public LuceneObject {
19 public:
20  Searcher();
21  virtual ~Searcher();
22 
24 
25 protected:
28 
29 public:
35  virtual TopFieldDocsPtr search(const QueryPtr& query, const FilterPtr& filter, int32_t n, const SortPtr& sort);
36 
47  virtual void search(const QueryPtr& query, const CollectorPtr& results);
48 
61  virtual void search(const QueryPtr& query, const FilterPtr& filter, const CollectorPtr& results);
62 
64  virtual TopDocsPtr search(const QueryPtr& query, const FilterPtr& filter, int32_t n);
65 
67  virtual TopDocsPtr search(const QueryPtr& query, int32_t n);
68 
74  virtual ExplanationPtr explain(const QueryPtr& query, int32_t doc);
75 
77  virtual void setSimilarity(const SimilarityPtr& similarity);
78 
82  virtual SimilarityPtr getSimilarity();
83 
84  virtual Collection<int32_t> docFreqs(Collection<TermPtr> terms);
85 
86  virtual void search(const WeightPtr& weight, const FilterPtr& filter, const CollectorPtr& results) = 0;
87  virtual void close() = 0;
88  virtual int32_t docFreq(const TermPtr& term) = 0;
89  virtual int32_t maxDoc() = 0;
90  virtual TopDocsPtr search(const WeightPtr& weight, const FilterPtr& filter, int32_t n) = 0;
91  virtual DocumentPtr doc(int32_t n) = 0;
92  virtual DocumentPtr doc(int32_t n, const FieldSelectorPtr& fieldSelector) = 0;
93  virtual QueryPtr rewrite(const QueryPtr& query) = 0;
94  virtual ExplanationPtr explain(const WeightPtr& weight, int32_t doc) = 0;
95  virtual TopFieldDocsPtr search(const WeightPtr& weight, const FilterPtr& filter, int32_t n, const SortPtr& sort) = 0;
96 
97 protected:
100  virtual WeightPtr createWeight(const QueryPtr& query);
101 };
102 
103 }
104 
105 #endif

clucene.sourceforge.net