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


StoredFieldsWriter.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 STOREDFIELDSWRITER_H
8 #define STOREDFIELDSWRITER_H
9 
10 #include "DocumentsWriter.h"
11 
12 namespace Lucene {
13 
16 public:
18  virtual ~StoredFieldsWriter();
19 
21 
22 public:
26  int32_t lastDocID;
27 
29  int32_t freeCount;
30  int32_t allocCount;
31 
32 public:
34  void flush(const SegmentWriteStatePtr& state);
35  void closeDocStore(const SegmentWriteStatePtr& state);
37  void abort();
38 
40  void fill(int32_t docID);
41 
42  void finishDocument(const StoredFieldsWriterPerDocPtr& perDoc);
43  bool freeRAM();
44  void free(const StoredFieldsWriterPerDocPtr& perDoc);
45 
46 protected:
47  void initFieldsWriter();
48 };
49 
51 public:
53  virtual ~StoredFieldsWriterPerDoc();
54 
56 
57 protected:
58  StoredFieldsWriterWeakPtr _fieldsWriter;
59 
60 public:
63  int32_t numStoredFields;
64 
65 public:
66  void reset();
67  virtual void abort();
68  virtual int64_t sizeInBytes();
69  virtual void finish();
70 };
71 
72 }
73 
74 #endif
int32_t freeCount
Definition: StoredFieldsWriter.h:29
boost::shared_ptr< FieldsWriter > FieldsWriterPtr
Definition: LuceneTypes.h:133
PerDocBufferPtr buffer
Definition: StoredFieldsWriter.h:61
int32_t lastDocID
Definition: StoredFieldsWriter.h:26
Collection< StoredFieldsWriterPerDocPtr > docFreeList
Definition: StoredFieldsWriter.h:28
FieldsWriterPtr fieldsWriter
Definition: StoredFieldsWriter.h:20
void finishDocument(const StoredFieldsWriterPerDocPtr &perDoc)
Definition: StoredFieldsWriter.h:50
void free(const StoredFieldsWriterPerDocPtr &perDoc)
void fill(int32_t docID)
Fills in any hole in the docIDs.
boost::weak_ptr< DocumentsWriter > DocumentsWriterWeakPtr
Definition: LuceneTypes.h:123
boost::shared_ptr< DocumentsWriter > DocumentsWriterPtr
Definition: LuceneTypes.h:123
boost::shared_ptr< StoredFieldsWriterPerDoc > StoredFieldsWriterPerDocPtr
Definition: LuceneTypes.h:231
Base class for all Lucene classes.
Definition: LuceneObject.h:31
This is a DocFieldConsumer that writes stored fields.
Definition: StoredFieldsWriter.h:15
boost::shared_ptr< StoredFieldsWriterPerThread > StoredFieldsWriterPerThreadPtr
Definition: LuceneTypes.h:232
StoredFieldsWriter(const DocumentsWriterPtr &docWriter, const FieldInfosPtr &fieldInfos)
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: AbstractAllTermDocs.h:12
StoredFieldsWriterPerThreadPtr addThread(const DocStatePtr &docState)
DocumentsWriterWeakPtr _docWriter
Definition: StoredFieldsWriter.h:24
boost::weak_ptr< StoredFieldsWriter > StoredFieldsWriterWeakPtr
Definition: LuceneTypes.h:230
boost::shared_ptr< RAMOutputStream > RAMOutputStreamPtr
Definition: LuceneTypes.h:508
FieldInfosPtr fieldInfos
Definition: StoredFieldsWriter.h:25
void closeDocStore(const SegmentWriteStatePtr &state)
boost::shared_ptr< StoredFieldsWriter > StoredFieldsWriterPtr
Definition: LuceneTypes.h:230
int32_t allocCount
Definition: StoredFieldsWriter.h:30
Consumer returns this on each doc. This holds any state that must be flushed synchronized "in docID o...
Definition: DocumentsWriter.h:402
boost::shared_ptr< PerDocBuffer > PerDocBufferPtr
Definition: LuceneTypes.h:199
int32_t numStoredFields
Definition: StoredFieldsWriter.h:63
boost::shared_ptr< SegmentWriteState > SegmentWriteStatePtr
Definition: LuceneTypes.h:222
boost::shared_ptr< DocState > DocStatePtr
Definition: LuceneTypes.h:122
RAMOutputStreamPtr fdt
Definition: StoredFieldsWriter.h:62
boost::shared_ptr< FieldInfos > FieldInfosPtr
Definition: LuceneTypes.h:127
StoredFieldsWriterPerDocPtr getPerDoc()
void flush(const SegmentWriteStatePtr &state)

clucene.sourceforge.net