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


DocFieldConsumer.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 DOCFIELDCONSUMER_H
8 #define DOCFIELDCONSUMER_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene {
13 
15 public:
16  virtual ~DocFieldConsumer();
17 
19 
20 protected:
22 
23 public:
25  virtual void flush(MapDocFieldConsumerPerThreadCollectionDocFieldConsumerPerField threadsAndFields, const SegmentWriteStatePtr& state) = 0;
26 
28  virtual void closeDocStore(const SegmentWriteStatePtr& state) = 0;
29 
31  virtual void abort() = 0;
32 
34  virtual DocFieldConsumerPerThreadPtr addThread(const DocFieldProcessorPerThreadPtr& docFieldProcessorPerThread) = 0;
35 
38  virtual bool freeRAM() = 0;
39 
40  virtual void setFieldInfos(const FieldInfosPtr& fieldInfos);
41 };
42 
43 }
44 
45 #endif
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: DocFieldConsumer.h:14
virtual bool freeRAM()=0
Called when DocumentsWriter is using too much RAM. The consumer should free RAM, if possible,...
virtual void setFieldInfos(const FieldInfosPtr &fieldInfos)
virtual void closeDocStore(const SegmentWriteStatePtr &state)=0
Called when DocumentsWriter decides to close the doc stores.
FieldInfosPtr fieldInfos
Definition: DocFieldConsumer.h:18
virtual void abort()=0
Called when an aborting exception is hit.
virtual DocFieldConsumerPerThreadPtr addThread(const DocFieldProcessorPerThreadPtr &docFieldProcessorPerThread)=0
Add a new thread.
virtual void flush(MapDocFieldConsumerPerThreadCollectionDocFieldConsumerPerField threadsAndFields, const SegmentWriteStatePtr &state)=0
Called when DocumentsWriter decides to create a new segment.
Base class for all Lucene classes.
Definition: LuceneObject.h:31
Definition: AbstractAllTermDocs.h:12
boost::shared_ptr< FieldInfos > FieldInfosPtr
Definition: LuceneTypes.h:127
boost::shared_ptr< SegmentWriteState > SegmentWriteStatePtr
Definition: LuceneTypes.h:222
boost::shared_ptr< DocFieldConsumerPerThread > DocFieldConsumerPerThreadPtr
Definition: LuceneTypes.h:110
boost::shared_ptr< DocFieldProcessorPerThread > DocFieldProcessorPerThreadPtr
Definition: LuceneTypes.h:117

clucene.sourceforge.net