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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SegmentTermEnum.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 SEGMENTTERMENUM_H
8 #define SEGMENTTERMENUM_H
9 
10 #include "TermEnum.h"
11 
12 namespace Lucene {
13 
14 class SegmentTermEnum : public TermEnum {
15 public:
17  SegmentTermEnum(const IndexInputPtr& i, const FieldInfosPtr& fis, bool isi);
18  virtual ~SegmentTermEnum();
19 
21 
22 protected:
26  TermBufferPtr scanBuffer; // used for scanning
27 
29 
30  int32_t format;
31  bool isIndex;
33 
34 public:
36  int64_t size;
37  int64_t position;
38 
39  int64_t indexPointer;
40  int32_t indexInterval;
41  int32_t skipInterval;
42  int32_t maxSkipLevels;
43 
44 public:
45  virtual LuceneObjectPtr clone(const LuceneObjectPtr& other = LuceneObjectPtr());
46 
47  void seek(int64_t pointer, int64_t p, const TermPtr& t, const TermInfoPtr& ti);
48 
50  virtual bool next();
51 
53  int32_t scanTo(const TermPtr& term);
54 
57  virtual TermPtr term();
58 
60  TermPtr prev();
61 
65 
68  void termInfo(const TermInfoPtr& ti);
69 
72  virtual int32_t docFreq();
73 
76  int64_t freqPointer();
77 
80  int64_t proxPointer();
81 
83  virtual void close();
84 };
85 
86 }
87 
88 #endif

clucene.sourceforge.net