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


FreqProxTermsWriter.h
Go to the documentation of this file.
1 // 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 FREQPROXTERMSWRITER_H
8 #define FREQPROXTERMSWRITER_H
9 
10 #include "TermsHashConsumer.h"
11 #include "RawPostingList.h"
12 
13 namespace Lucene {
14 
16 public:
17  virtual ~FreqProxTermsWriter();
18 
20 
21 protected:
22  ByteArray payloadBuffer;
23 
24 public:
26  virtual void createPostings(Collection<RawPostingListPtr> postings, int32_t start, int32_t count);
27  virtual void closeDocStore(const SegmentWriteStatePtr& state);
28  virtual void abort();
29  virtual void flush(MapTermsHashConsumerPerThreadCollectionTermsHashConsumerPerField threadsAndFields, const SegmentWriteStatePtr& state);
30 
34 
35  virtual int32_t bytesPerPosting();
36 
37 protected:
38  static int32_t compareText(const wchar_t* text1, int32_t pos1, const wchar_t* text2, int32_t pos2);
39 };
40 
42 public:
45 
47 
48 public:
49  int32_t docFreq; // # times this term occurs in the current doc
50  int32_t lastDocID; // Last docID where this term occurred
51  int32_t lastDocCode; // Code for prior doc
52  int32_t lastPosition; // Last position where this term occurred
53 };
54 
55 }
56 
57 #endif
Definition: TermsHashConsumer.h:14
boost::shared_ptr< TermsHashConsumerPerThread > TermsHashConsumerPerThreadPtr
Definition: LuceneTypes.h:249
ByteArray payloadBuffer
Definition: FreqProxTermsWriter.h:19
virtual void closeDocStore(const SegmentWriteStatePtr &state)
Definition: FreqProxTermsWriter.h:15
int32_t lastPosition
Definition: FreqProxTermsWriter.h:52
This is the base class for an in-memory posting list, keyed by a Token. TermsHash maintains a hash ta...
Definition: RawPostingList.h:19
virtual int32_t bytesPerPosting()
virtual void createPostings(Collection< RawPostingListPtr > postings, int32_t start, int32_t count)
virtual void flush(MapTermsHashConsumerPerThreadCollectionTermsHashConsumerPerField threadsAndFields, const SegmentWriteStatePtr &state)
int32_t lastDocCode
Definition: FreqProxTermsWriter.h:51
virtual TermsHashConsumerPerThreadPtr addThread(const TermsHashPerThreadPtr &perThread)
boost::shared_ptr< FormatPostingsFieldsConsumer > FormatPostingsFieldsConsumerPtr
Definition: LuceneTypes.h:141
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: AbstractAllTermDocs.h:12
Definition: FreqProxTermsWriter.h:41
void appendPostings(Collection< FreqProxTermsWriterPerFieldPtr > fields, const FormatPostingsFieldsConsumerPtr &consumer)
Walk through all unique text tokens (Posting instances) found in this field and serialize them into a...
boost::shared_ptr< TermsHashPerThread > TermsHashPerThreadPtr
Definition: LuceneTypes.h:251
int32_t lastDocID
Definition: FreqProxTermsWriter.h:50
static int32_t compareText(const wchar_t *text1, int32_t pos1, const wchar_t *text2, int32_t pos2)
boost::shared_ptr< SegmentWriteState > SegmentWriteStatePtr
Definition: LuceneTypes.h:222

clucene.sourceforge.net