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

clucene.sourceforge.net