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


NumericTokenStream.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 NUMERICTOKENSTREAM_H
8 #define NUMERICTOKENSTREAM_H
9 
10 #include "TokenStream.h"
11 
12 namespace Lucene {
13 
52 class LPPAPI NumericTokenStream : public TokenStream {
53 public:
58 
61  NumericTokenStream(int32_t precisionStep);
62 
66  NumericTokenStream(const AttributeSourcePtr& source, int32_t precisionStep);
67 
71  NumericTokenStream(const AttributeFactoryPtr& factory, int32_t precisionStep);
72 
73  virtual ~NumericTokenStream();
74 
76 
77 protected:
81 
82  int32_t shift;
83  int32_t valSize; // valSize == 0 means not initialized
84  int32_t precisionStep;
85 
86  int64_t value;
87 
88 public:
90  static const String& TOKEN_TYPE_FULL_PREC();
91 
93  static const String& TOKEN_TYPE_LOWER_PREC();
94 
99  NumericTokenStreamPtr setLongValue(int64_t value);
100 
105  NumericTokenStreamPtr setIntValue(int32_t value);
106 
111  NumericTokenStreamPtr setDoubleValue(double value);
112 
113  virtual void reset();
114  virtual bool incrementToken();
115  virtual String toString();
116 };
117 
118 }
119 
120 #endif
PositionIncrementAttributePtr posIncrAtt
Definition: NumericTokenStream.h:80
boost::shared_ptr< PositionIncrementAttribute > PositionIncrementAttributePtr
Definition: LuceneTypes.h:45
boost::shared_ptr< AttributeFactory > AttributeFactoryPtr
Definition: LuceneTypes.h:519
boost::shared_ptr< AttributeSource > AttributeSourcePtr
Definition: LuceneTypes.h:520
boost::shared_ptr< TermAttribute > TermAttributePtr
Definition: LuceneTypes.h:58
TypeAttributePtr typeAtt
Definition: NumericTokenStream.h:79
TermAttributePtr termAtt
Definition: NumericTokenStream.h:75
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: AbstractAllTermDocs.h:12
int32_t shift
Definition: NumericTokenStream.h:82
boost::shared_ptr< TypeAttribute > TypeAttributePtr
Definition: LuceneTypes.h:64
int32_t valSize
Definition: NumericTokenStream.h:83
boost::shared_ptr< NumericTokenStream > NumericTokenStreamPtr
Definition: LuceneTypes.h:39
int64_t value
Definition: NumericTokenStream.h:86
int32_t precisionStep
Definition: NumericTokenStream.h:84
This class provides a TokenStream for indexing numeric values that can be used by NumericRangeQuery o...
Definition: NumericTokenStream.h:52
A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...
Definition: TokenStream.h:44

clucene.sourceforge.net