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


FuzzyTermEnum.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 FUZZYTERMENUM_H
8 #define FUZZYTERMENUM_H
9 
10 #include "FilteredTermEnum.h"
11 
12 namespace Lucene {
13 
18 class LPPAPI FuzzyTermEnum : public FilteredTermEnum {
19 public:
29  FuzzyTermEnum(const IndexReaderPtr& reader, const TermPtr& term, double minSimilarity, int32_t prefixLength);
30  FuzzyTermEnum(const IndexReaderPtr& reader, const TermPtr& term, double minSimilarity);
31  FuzzyTermEnum(const IndexReaderPtr& reader, const TermPtr& term);
32 
33  virtual ~FuzzyTermEnum();
34 
36 
37 protected:
41 
42  double _similarity;
43  bool _endEnum;
44 
46  String field;
47  String text;
48  String prefix;
49 
51  double scale_factor;
52 
53 public:
54  virtual double difference();
55  virtual bool endEnum();
56  virtual void close();
57 
58 protected:
59  void ConstructTermEnum(const IndexReaderPtr& reader, const TermPtr& term, double minSimilarity, int32_t prefixLength);
60 
63  virtual bool termCompare(const TermPtr& term);
64 
105  double similarity(const String& target);
106 
111  int32_t calculateMaxDistance(int32_t m);
112 };
113 
114 }
115 
116 #endif
boost::shared_ptr< Term > TermPtr
Definition: LuceneTypes.h:233
Collection< int32_t > d
Definition: FuzzyTermEnum.h:40
bool _endEnum
Definition: FuzzyTermEnum.h:43
String text
Definition: FuzzyTermEnum.h:47
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: AbstractAllTermDocs.h:12
double _similarity
Definition: FuzzyTermEnum.h:42
Abstract class for enumerating a subset of all terms.
Definition: FilteredTermEnum.h:18
Subclass of FilteredTermEnum for enumerating all terms that are similar to the specified filter term...
Definition: FuzzyTermEnum.h:18
TermPtr searchTerm
Definition: FuzzyTermEnum.h:45
double scale_factor
Definition: FuzzyTermEnum.h:51
double minimumSimilarity
Definition: FuzzyTermEnum.h:50
String prefix
Definition: FuzzyTermEnum.h:48
String field
Definition: FuzzyTermEnum.h:46

clucene.sourceforge.net