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

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SegmentTermDocs.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 SEGMENTTERMDOCS_H
8 #define SEGMENTTERMDOCS_H
9
10 #include "TermPositions.h"
11
12 namespace Lucene
13 {
14 class SegmentTermDocs : public TermPositions, public LuceneObject
15 {
16 public:
17 SegmentTermDocs(SegmentReaderPtr parent);
18 virtual ~SegmentTermDocs();
19
20 LUCENE_CLASS(SegmentTermDocs);
21
22 protected:
23 SegmentReaderWeakPtr _parent;
24 IndexInputPtr _freqStream;
25 int32_t count;
26 int32_t df;
27 BitVectorPtr deletedDocs;
28 int32_t _doc;
29 int32_t _freq;
30
31 int32_t skipInterval;
32 int32_t maxSkipLevels;
33 DefaultSkipListReaderPtr skipListReader;
34
35 int64_t freqBasePointer;
36 int64_t proxBasePointer;
37
38 int64_t skipPointer;
39 bool haveSkipped;
40
41 bool currentFieldStoresPayloads;
42 bool currentFieldOmitTermFreqAndPositions;
43
44 public:
46 virtual void seek(TermPtr term);
47
49 virtual void seek(TermEnumPtr termEnum);
50
51 virtual void seek(TermInfoPtr ti, TermPtr term);
52
53 virtual void close();
54
56 virtual int32_t doc();
57
59 virtual int32_t freq();
60
62 virtual bool next();
63
65 virtual int32_t read(Collection<int32_t> docs, Collection<int32_t> freqs);
66
68 virtual bool skipTo(int32_t target);
69
71 virtual IndexInputPtr freqStream();
72 virtual void freqStream(IndexInputPtr freqStream);
73
74 protected:
75 virtual void skippingDoc();
76 virtual int32_t readNoTf(Collection<int32_t> docs, Collection<int32_t> freqs, int32_t length);
77
79 virtual void skipProx(int64_t proxPointer, int32_t payloadLength);
80 };
81 }
82
83 #endif

clucene.sourceforge.net