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

TermsHashPerThread.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 TERMSHASHPERTHREAD_H
8 #define TERMSHASHPERTHREAD_H
9
10 #include "InvertedDocConsumerPerThread.h"
11
12 namespace Lucene {
13
14 class TermsHashPerThread : public InvertedDocConsumerPerThread {
15 public:
16 TermsHashPerThread(const DocInverterPerThreadPtr& docInverterPerThread, const TermsHashPtr& termsHash, const TermsHashPtr& nextTermsHash, const TermsHashPerThreadPtr& primaryPerThread);
17 virtual ~TermsHashPerThread();
18
19 LUCENE_CLASS(TermsHashPerThread);
20
21 public:
22 DocInverterPerThreadWeakPtr _docInverterPerThread;
23 TermsHashWeakPtr _termsHash;
24 TermsHashPtr nextTermsHash;
25 TermsHashPerThreadWeakPtr _primaryPerThread;
26 TermsHashConsumerPerThreadPtr consumer;
27 TermsHashPerThreadPtr nextPerThread;
28
29 CharBlockPoolPtr charPool;
30 IntBlockPoolPtr intPool;
31 ByteBlockPoolPtr bytePool;
32 bool primary;
33 DocStatePtr docState;
34
35 Collection<RawPostingListPtr> freePostings;
36 int32_t freePostingsCount;
37
38 public:
39 virtual void initialize();
40
41 virtual InvertedDocConsumerPerFieldPtr addField(const DocInverterPerFieldPtr& docInverterPerField, const FieldInfoPtr& fieldInfo);
42 virtual void abort();
43
45 void morePostings();
46
47 virtual void startDocument();
48 virtual DocWriterPtr finishDocument();
49
51 void reset(bool recyclePostings);
52
53 protected:
54 static bool noNullPostings(Collection<RawPostingListPtr> postings, int32_t count, const String& details);
55 };
56
57 }
58
59 #endif
InvertedDocConsumerPerThread.h
LUCENE_CLASS
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Lucene::Collection< RawPostingListPtr >
Lucene::InvertedDocConsumerPerThread
Definition: InvertedDocConsumerPerThread.h:14
Lucene::TermsHashPerThread
Definition: TermsHashPerThread.h:14
Lucene::TermsHashPerThread::~TermsHashPerThread
virtual ~TermsHashPerThread()
Lucene::TermsHashPerThread::freePostings
Collection< RawPostingListPtr > freePostings
Definition: TermsHashPerThread.h:35
Lucene::TermsHashPerThread::finishDocument
virtual DocWriterPtr finishDocument()
Lucene::TermsHashPerThread::noNullPostings
static bool noNullPostings(Collection< RawPostingListPtr > postings, int32_t count, const String &details)
Lucene::TermsHashPerThread::consumer
TermsHashConsumerPerThreadPtr consumer
Definition: TermsHashPerThread.h:26
Lucene::TermsHashPerThread::abort
virtual void abort()
Lucene::TermsHashPerThread::bytePool
ByteBlockPoolPtr bytePool
Definition: TermsHashPerThread.h:31
Lucene::TermsHashPerThread::intPool
IntBlockPoolPtr intPool
Definition: TermsHashPerThread.h:30
Lucene::TermsHashPerThread::addField
virtual InvertedDocConsumerPerFieldPtr addField(const DocInverterPerFieldPtr &docInverterPerField, const FieldInfoPtr &fieldInfo)
Lucene::TermsHashPerThread::initialize
virtual void initialize()
Called directly after instantiation to create objects that depend on this object being fully construc...
Lucene::TermsHashPerThread::morePostings
void morePostings()
perField calls this when it needs more postings
Lucene::TermsHashPerThread::primary
bool primary
Definition: TermsHashPerThread.h:32
Lucene::TermsHashPerThread::charPool
CharBlockPoolPtr charPool
Definition: TermsHashPerThread.h:29
Lucene::TermsHashPerThread::startDocument
virtual void startDocument()
Lucene::TermsHashPerThread::_termsHash
TermsHashWeakPtr _termsHash
Definition: TermsHashPerThread.h:23
Lucene::TermsHashPerThread::_docInverterPerThread
DocInverterPerThreadWeakPtr _docInverterPerThread
Definition: TermsHashPerThread.h:19
Lucene::TermsHashPerThread::TermsHashPerThread
TermsHashPerThread(const DocInverterPerThreadPtr &docInverterPerThread, const TermsHashPtr &termsHash, const TermsHashPtr &nextTermsHash, const TermsHashPerThreadPtr &primaryPerThread)
Lucene::TermsHashPerThread::nextPerThread
TermsHashPerThreadPtr nextPerThread
Definition: TermsHashPerThread.h:27
Lucene::TermsHashPerThread::freePostingsCount
int32_t freePostingsCount
Definition: TermsHashPerThread.h:36
Lucene::TermsHashPerThread::docState
DocStatePtr docState
Definition: TermsHashPerThread.h:33
Lucene::TermsHashPerThread::nextTermsHash
TermsHashPtr nextTermsHash
Definition: TermsHashPerThread.h:24
Lucene::TermsHashPerThread::_primaryPerThread
TermsHashPerThreadWeakPtr _primaryPerThread
Definition: TermsHashPerThread.h:25
Lucene::TermsHashPerThread::reset
void reset(bool recyclePostings)
Clear all state.
Lucene
Definition: AbstractAllTermDocs.h:12
Lucene::DocStatePtr
boost::shared_ptr< DocState > DocStatePtr
Definition: LuceneTypes.h:122
Lucene::DocInverterPerFieldPtr
boost::shared_ptr< DocInverterPerField > DocInverterPerFieldPtr
Definition: LuceneTypes.h:120
Lucene::TermsHashConsumerPerThreadPtr
boost::shared_ptr< TermsHashConsumerPerThread > TermsHashConsumerPerThreadPtr
Definition: LuceneTypes.h:249
Lucene::DocInverterPerThreadWeakPtr
boost::weak_ptr< DocInverterPerThread > DocInverterPerThreadWeakPtr
Definition: LuceneTypes.h:121
Lucene::IntBlockPoolPtr
boost::shared_ptr< IntBlockPool > IntBlockPoolPtr
Definition: LuceneTypes.h:161
Lucene::DocInverterPerThreadPtr
boost::shared_ptr< DocInverterPerThread > DocInverterPerThreadPtr
Definition: LuceneTypes.h:121
Lucene::CharBlockPoolPtr
boost::shared_ptr< CharBlockPool > CharBlockPoolPtr
Definition: LuceneTypes.h:93
Lucene::TermsHashPerThreadWeakPtr
boost::weak_ptr< TermsHashPerThread > TermsHashPerThreadWeakPtr
Definition: LuceneTypes.h:251
Lucene::ByteBlockPoolPtr
boost::shared_ptr< ByteBlockPool > ByteBlockPoolPtr
Definition: LuceneTypes.h:89
Lucene::TermsHashPerThreadPtr
boost::shared_ptr< TermsHashPerThread > TermsHashPerThreadPtr
Definition: LuceneTypes.h:251
Lucene::DocWriterPtr
boost::shared_ptr< DocWriter > DocWriterPtr
Definition: LuceneTypes.h:125
Lucene::TermsHashWeakPtr
boost::weak_ptr< TermsHash > TermsHashWeakPtr
Definition: LuceneTypes.h:246
Lucene::FieldInfoPtr
boost::shared_ptr< FieldInfo > FieldInfoPtr
Definition: LuceneTypes.h:126
Lucene::InvertedDocConsumerPerFieldPtr
boost::shared_ptr< InvertedDocConsumerPerField > InvertedDocConsumerPerFieldPtr
Definition: LuceneTypes.h:164
Lucene::TermsHashPtr
boost::shared_ptr< TermsHash > TermsHashPtr
Definition: LuceneTypes.h:246

clucene.sourceforge.net