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
DefaultSkipListReader.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 DEFAULTSKIPLISTREADER_H
8 #define DEFAULTSKIPLISTREADER_H
9
10 #include "MultiLevelSkipListReader.h"
11
12 namespace Lucene
13 {
15 class DefaultSkipListReader : public MultiLevelSkipListReader
16 {
17 public:
18 DefaultSkipListReader(IndexInputPtr skipStream, int32_t maxSkipLevels, int32_t skipInterval);
19 virtual ~DefaultSkipListReader();
20
21 LUCENE_CLASS(DefaultSkipListReader);
22
23 protected:
24 bool currentFieldStoresPayloads;
25 Collection<int64_t> freqPointer;
26 Collection<int64_t> proxPointer;
27 Collection<int32_t> payloadLength;
28
29 int64_t lastFreqPointer;
30 int64_t lastProxPointer;
31 int32_t lastPayloadLength;
32
33 public:
34 void init(int64_t skipPointer, int64_t freqBasePointer, int64_t proxBasePointer, int32_t df, bool storesPayloads);
35
38 int64_t getFreqPointer();
39
42 int64_t getProxPointer();
43
46 int32_t getPayloadLength();
47
48 protected:
50 virtual void seekChild(int32_t level);
51
53 virtual void setLastSkipData(int32_t level);
54
56 virtual int32_t readSkipData(int32_t level, IndexInputPtr skipStream);
57 };
58 }
59
60 #endif

clucene.sourceforge.net