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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SegmentTermDocs.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 SEGMENTTERMDOCS_H
8 #define SEGMENTTERMDOCS_H
9 
10 #include "TermPositions.h"
11 
12 namespace Lucene {
13 
14 class SegmentTermDocs : public TermPositions, public LuceneObject {
15 public:
16  SegmentTermDocs(const SegmentReaderPtr& parent);
17  virtual ~SegmentTermDocs();
18 
20 
21 protected:
24  int32_t count;
25  int32_t df;
27  int32_t _doc;
28  int32_t _freq;
29 
30  int32_t skipInterval;
31  int32_t maxSkipLevels;
33 
34  int64_t freqBasePointer;
35  int64_t proxBasePointer;
36 
37  int64_t skipPointer;
39 
42 
43 public:
45  virtual void seek(const TermPtr& term);
46 
48  virtual void seek(const TermEnumPtr& termEnum);
49 
50  virtual void seek(const TermInfoPtr& ti, const TermPtr& term);
51 
52  virtual void close();
53 
55  virtual int32_t doc();
56 
58  virtual int32_t freq();
59 
61  virtual bool next();
62 
64  virtual int32_t read(Collection<int32_t> docs, Collection<int32_t> freqs);
65 
67  virtual bool skipTo(int32_t target);
68 
70  virtual IndexInputPtr freqStream();
71  virtual void freqStream(const IndexInputPtr& freqStream);
72 
73 protected:
74  virtual void skippingDoc();
75  virtual int32_t readNoTf(Collection<int32_t> docs, Collection<int32_t> freqs, int32_t length);
76 
78  virtual void skipProx(int64_t proxPointer, int32_t payloadLength);
79 };
80 
81 }
82 
83 #endif

clucene.sourceforge.net