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.
5 /////////////////////////////////////////////////////////////////////////////
6 
7 #ifndef RAWPOSTINGLIST_H
8 #define RAWPOSTINGLIST_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene {
13 
14 /// This is the base class for an in-memory posting list, keyed by a Token.  {@link TermsHash} maintains a
15 /// hash table holding one instance of this per unique Token.  Consumers of TermsHash ({@link TermsHashConsumer})
16 /// must subclass this class with its own concrete class.  FreqProxTermsWriterPostingList is a private inner
17 /// class used for the freq/prox postings, and TermVectorsTermsWriterPostingList is a private inner class used
18 /// to hold TermVectors postings.
19 class RawPostingList : public LuceneObject {
20 public:
21     RawPostingList();
22     virtual ~RawPostingList();
23 
24     LUCENE_CLASS(RawPostingList);
25 
26 public:
27     static const int32_t BYTES_SIZE;
28 
29     int32_t textStart;
30     int32_t intStart;
31     int32_t byteStart;
32 };
33 
34 }
35 
36 #endif
37