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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Searchable.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 SEARCHABLE_H
8 #define SEARCHABLE_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene
13 {
24  class LPPAPI Searchable
25  {
26  public:
28 
29  public:
42  virtual void search(WeightPtr weight, FilterPtr filter, CollectorPtr collector) = 0;
43 
46  virtual void close() = 0;
47 
50  virtual int32_t docFreq(TermPtr term) = 0;
51 
54  virtual Collection<int32_t> docFreqs(Collection<TermPtr> terms) = 0;
55 
58  virtual int32_t maxDoc() = 0;
59 
63  virtual TopDocsPtr search(WeightPtr weight, FilterPtr filter, int32_t n) = 0;
64 
67  virtual DocumentPtr doc(int32_t n) = 0;
68 
86  virtual DocumentPtr doc(int32_t n, FieldSelectorPtr fieldSelector) = 0;
87 
89  virtual QueryPtr rewrite(QueryPtr query) = 0;
90 
98  virtual ExplanationPtr explain(WeightPtr weight, int32_t doc) = 0;
99 
104  virtual TopFieldDocsPtr search(WeightPtr weight, FilterPtr filter, int32_t n, SortPtr sort) = 0;
105  };
106 }
107 
108 #endif

clucene.sourceforge.net