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


TermInfosWriter.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 TERMINFOSWRITER_H
8 #define TERMINFOSWRITER_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene {
13 
16 class TermInfosWriter : public LuceneObject {
17 public:
18  TermInfosWriter(const DirectoryPtr& directory, const String& segment, const FieldInfosPtr& fis, int32_t interval);
19  TermInfosWriter(const DirectoryPtr& directory, const String& segment, const FieldInfosPtr& fis, int32_t interval, bool isIndex);
20  virtual ~TermInfosWriter();
21 
23 
24 public:
26  static const int32_t FORMAT;
27 
30 
32  static const int32_t FORMAT_CURRENT;
33 
37  int32_t indexInterval;
38 
43  int32_t skipInterval;
44 
47  int32_t maxSkipLevels;
48 
49 protected:
53  int64_t size;
54 
56  bool isIndex;
57  ByteArray lastTermBytes;
59  int32_t lastFieldNumber;
60 
64 
65  // Currently used only by assert statements
68 
69 public:
70  virtual void initialize();
71 
72  void add(const TermPtr& term, const TermInfoPtr& ti);
73 
76  void add(int32_t fieldNumber, ByteArray termBytes, int32_t termBytesLength, const TermInfoPtr& ti);
77 
79  void close();
80 
81 protected:
82  void initialize(const DirectoryPtr& directory, const String& segment, const FieldInfosPtr& fis, int32_t interval, bool isi);
83 
85  bool initUnicodeResults();
86 
88  int32_t compareToLastTerm(int32_t fieldNumber, ByteArray termBytes, int32_t termBytesLength);
89 
90  void writeTerm(int32_t fieldNumber, ByteArray termBytes, int32_t termBytesLength);
91 };
92 
93 }
94 
95 #endif
Lucene::TermInfosWriter::unicodeResult2
UnicodeResultPtr unicodeResult2
Definition: TermInfosWriter.h:67
Lucene::TermInfosWriter::fieldInfos
FieldInfosPtr fieldInfos
Definition: TermInfosWriter.h:50
LUCENE_CLASS
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Lucene::TermInfosWriterWeakPtr
boost::weak_ptr< TermInfosWriter > TermInfosWriterWeakPtr
Definition: LuceneTypes.h:242
Lucene::TermPtr
boost::shared_ptr< Term > TermPtr
Definition: LuceneTypes.h:233
Lucene::TermInfosWriter::TermInfosWriter
TermInfosWriter(const DirectoryPtr &directory, const String &segment, const FieldInfosPtr &fis, int32_t interval)
Lucene::TermInfosWriter::~TermInfosWriter
virtual ~TermInfosWriter()
Lucene::TermInfosWriter::lastTermBytes
ByteArray lastTermBytes
Definition: TermInfosWriter.h:57
Lucene::TermInfosWriter::utf8Result
UTF8ResultPtr utf8Result
Definition: TermInfosWriter.h:63
Lucene::FieldInfosPtr
boost::shared_ptr< FieldInfos > FieldInfosPtr
Definition: LuceneTypes.h:127
Lucene::TermInfosWriter::lastFieldNumber
int32_t lastFieldNumber
Definition: TermInfosWriter.h:59
Lucene::TermInfosWriter::writeTerm
void writeTerm(int32_t fieldNumber, ByteArray termBytes, int32_t termBytesLength)
Lucene::TermInfosWriter::size
int64_t size
Definition: TermInfosWriter.h:53
Lucene::TermInfosWriter::close
void close()
Called to complete TermInfos creation.
Lucene::TermInfosWriter::add
void add(const TermPtr &term, const TermInfoPtr &ti)
Lucene::TermInfosWriter::FORMAT_VERSION_UTF8_LENGTH_IN_BYTES
static const int32_t FORMAT_VERSION_UTF8_LENGTH_IN_BYTES
Changed strings to true utf8 with length-in-bytes not length-in-chars.
Definition: TermInfosWriter.h:29
Lucene
Definition: AbstractAllTermDocs.h:12
Lucene::TermInfosWriter::isIndex
bool isIndex
Definition: TermInfosWriter.h:56
Lucene::TermInfosWriter::FORMAT_CURRENT
static const int32_t FORMAT_CURRENT
NOTE: always change this if you switch to a new format.
Definition: TermInfosWriter.h:32
Lucene::LuceneObject
Base class for all Lucene classes.
Definition: LuceneObject.h:31
Lucene::TermInfosWriter::output
IndexOutputPtr output
Definition: TermInfosWriter.h:51
Lucene::TermInfosWriter::initUnicodeResults
bool initUnicodeResults()
Currently used only by assert statements.
Lucene::TermInfoPtr
boost::shared_ptr< TermInfo > TermInfoPtr
Definition: LuceneTypes.h:239
Lucene::TermInfosWriter::otherWriter
TermInfosWriterPtr otherWriter
Definition: TermInfosWriter.h:61
Lucene::TermInfosWriter
This stores a monotonically increasing set of <Term, TermInfo> pairs in a Directory....
Definition: TermInfosWriter.h:16
Lucene::TermInfosWriterPtr
boost::shared_ptr< TermInfosWriter > TermInfosWriterPtr
Definition: LuceneTypes.h:242
Lucene::UnicodeResultPtr
boost::shared_ptr< UnicodeResult > UnicodeResultPtr
Definition: LuceneTypes.h:554
Lucene::TermInfosWriter::lastTi
TermInfoPtr lastTi
Definition: TermInfosWriter.h:52
Lucene::TermInfosWriter::unicodeResult1
UnicodeResultPtr unicodeResult1
Definition: TermInfosWriter.h:66
Lucene::TermInfosWriter::initialize
virtual void initialize()
Called directly after instantiation to create objects that depend on this object being fully construc...
Lucene::TermInfosWriter::maxSkipLevels
int32_t maxSkipLevels
The maximum number of skip levels. Smaller values result in slightly smaller indexes,...
Definition: TermInfosWriter.h:47
Lucene::TermInfosWriter::lastTermBytesLength
int32_t lastTermBytesLength
Definition: TermInfosWriter.h:58
Lucene::TermInfosWriter::lastIndexPointer
int64_t lastIndexPointer
Definition: TermInfosWriter.h:55
Lucene::TermInfosWriter::skipInterval
int32_t skipInterval
The fraction of TermDocs entries stored in skip tables, used to accelerate TermDocs#skipTo(int)....
Definition: TermInfosWriter.h:43
Lucene::DirectoryPtr
boost::shared_ptr< Directory > DirectoryPtr
Definition: LuceneTypes.h:489
Lucene::TermInfosWriter::compareToLastTerm
int32_t compareToLastTerm(int32_t fieldNumber, ByteArray termBytes, int32_t termBytesLength)
Currently used only by assert statement.
Lucene::TermInfosWriter::FORMAT
static const int32_t FORMAT
The file format version, a negative number.
Definition: TermInfosWriter.h:22
Lucene::TermInfosWriter::indexInterval
int32_t indexInterval
The fraction of terms in the "dictionary" which should be stored in RAM. Smaller values use more memo...
Definition: TermInfosWriter.h:37
Lucene::TermInfosWriter::_other
TermInfosWriterWeakPtr _other
Definition: TermInfosWriter.h:62
Lucene::UTF8ResultPtr
boost::shared_ptr< UTF8Result > UTF8ResultPtr
Definition: LuceneTypes.h:559
Lucene::IndexOutputPtr
boost::shared_ptr< IndexOutput > IndexOutputPtr
Definition: LuceneTypes.h:494
LuceneObject.h

clucene.sourceforge.net