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

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
Lucene::SegmentTermPositions Class Reference

`#include <SegmentTermPositions.h>`

Inheritance diagram for Lucene::SegmentTermPositions:

## Public Member Functions

| SegmentTermPositions (const SegmentReaderPtr &parent)
virtual | ~SegmentTermPositions ()
virtual String | getClassName ()
boost::shared_ptr< SegmentTermPositions > | shared_from_this ()
virtual void | seek (const TermInfoPtr &ti, const TermPtr &term)
virtual void | close ()
| Frees associated resources. More...
virtual int32_t | nextPosition ()
| Returns next position in the current document. More...
virtual bool | next ()
| Moves to the next pair in the enumeration. More...
virtual int32_t | read (Collection< int32_t > docs, Collection< int32_t > freqs)
| Not supported. More...
virtual int32_t | getPayloadLength ()
| Returns the length of the payload at the current term position. More...
virtual ByteArray | getPayload (ByteArray data, int32_t offset)
| Returns the payload data at the current term position. More...
virtual bool | isPayloadAvailable ()
| Checks if a payload can be loaded at this position. More...
Public Member Functions inherited from Lucene::SegmentTermDocs
| SegmentTermDocs (const SegmentReaderPtr &parent)
virtual | ~SegmentTermDocs ()
boost::shared_ptr< SegmentTermDocs > | shared_from_this ()
virtual void | seek (const TermPtr &term)
| Sets this to the data for a term. More...
virtual void | seek (const TermEnumPtr &termEnum)
| Sets this to the data for the current term in a TermEnum. More...
virtual int32_t | doc ()
| Returns the current document number. More...
virtual int32_t | freq ()
| Returns the frequency of the term within the current document. More...
virtual bool | skipTo (int32_t target)
| Optimized implementation. More...
virtual IndexInputPtr | freqStream ()
| Used for testing. More...
virtual void | freqStream (const IndexInputPtr &freqStream)
Public Member Functions inherited from Lucene::TermPositions
virtual | ~TermPositions ()
Public Member Functions inherited from Lucene::LuceneObject
virtual | ~LuceneObject ()
virtual void | initialize ()
| Called directly after instantiation to create objects that depend on this object being fully constructed. More...
virtual LuceneObjectPtr | clone (const LuceneObjectPtr &other=LuceneObjectPtr())
| Return clone of this object. More...
virtual int32_t | hashCode ()
| Return hash code for this object. More...
virtual bool | equals (const LuceneObjectPtr &other)
| Return whether two objects are equal. More...
virtual int32_t | compareTo (const LuceneObjectPtr &other)
| Compare two objects. More...
virtual String | toString ()
| Returns a string representation of the object. More...
Public Member Functions inherited from Lucene::LuceneSync
virtual | ~LuceneSync ()
virtual SynchronizePtr | getSync ()
| Return this object synchronize lock. More...
virtual LuceneSignalPtr | getSignal ()
| Return this object signal. More...
virtual void | lock (int32_t timeout=0)
| Lock this object using an optional timeout. More...
virtual void | unlock ()
| Unlock this object. More...
virtual bool | holdsLock ()
| Returns true if this object is currently locked by current thread. More...
virtual void | wait (int32_t timeout=0)
| Wait for signal using an optional timeout. More...
virtual void | notifyAll ()
| Notify all threads waiting for signal. More...

## Static Public Member Functions

static String | _getClassName ()
Static Public Member Functions inherited from Lucene::SegmentTermDocs
static String | _getClassName ()
Static Public Member Functions inherited from Lucene::TermPositions
static String | _getClassName ()
Static Public Member Functions inherited from Lucene::TermDocs
static String | _getClassName ()

## Protected Member Functions

int32_t | readDeltaPosition ()
virtual void | skippingDoc ()
virtual void | skipProx (int64_t proxPointer, int32_t payloadLength)
| Overridden by SegmentTermPositions to skip in prox stream. More...
virtual void | skipPositions (int32_t n)
virtual void | skipPayload ()
virtual void | lazySkip ()

It is not always necessary to move the prox pointer to a new document after the freq pointer has been moved. Consider for example a phrase query with two terms: the freq pointer for term 1 has to move to document x to answer the question if the term occurs in that document. But only if term 2 also matches document x, the positions have to be read to figure out if term 1 and term 2 appear next to each other in document x and thus satisfy the query. So we move the prox pointer lazily to the document as soon as positions are requested. More...

Protected Member Functions inherited from Lucene::SegmentTermDocs
virtual int32_t | readNoTf (Collection< int32_t > docs, Collection< int32_t > freqs, int32_t length)
Protected Member Functions inherited from Lucene::TermPositions
| TermPositions ()
Protected Member Functions inherited from Lucene::TermDocs
| TermDocs ()
Protected Member Functions inherited from Lucene::LuceneObject
| LuceneObject ()

## Protected Attributes

IndexInputPtr | proxStream
int32_t | proxCount
int32_t | position
int32_t | payloadLength
| The current payload length. More...
bool | needToLoadPayload
| Indicates whether the payload of the current position has been read from the proxStream yet. More...
int64_t | lazySkipPointer
int32_t | lazySkipProxCount
Protected Attributes inherited from Lucene::SegmentTermDocs
SegmentReaderWeakPtr | _parent
IndexInputPtr | _freqStream
int32_t | count
int32_t | df
BitVectorPtr | deletedDocs
int32_t | _doc
int32_t | _freq
int32_t | skipInterval
int32_t | maxSkipLevels
DefaultSkipListReaderPtr | skipListReader
int64_t | freqBasePointer
int64_t | proxBasePointer
int64_t | skipPointer
bool | haveSkipped
bool | currentFieldStoresPayloads
bool | currentFieldOmitTermFreqAndPositions
Protected Attributes inherited from Lucene::LuceneSync
SynchronizePtr | objectLock
LuceneSignalPtr | objectSignal

## Constructor & Destructor Documentation

Lucene::SegmentTermPositions::SegmentTermPositions | ( | const SegmentReaderPtr & | parent | ) |

virtual Lucene::SegmentTermPositions::~SegmentTermPositions | ( |  | ) |

virtual

## Member Function Documentation

static String Lucene::SegmentTermPositions::_getClassName | ( |  | ) |

inline static

virtual void Lucene::SegmentTermPositions::close | ( |  | ) |

virtual

Frees associated resources.

Reimplemented from Lucene::SegmentTermDocs.

virtual String Lucene::SegmentTermPositions::getClassName | ( |  | ) |

inline virtual

Reimplemented from Lucene::SegmentTermDocs.

virtual ByteArray Lucene::SegmentTermPositions::getPayload | ( | ByteArray | data,
|  | int32_t | offset
| ) |  |

virtual

Returns the payload data at the current term position.

Reimplemented from Lucene::TermPositions.

virtual int32_t Lucene::SegmentTermPositions::getPayloadLength | ( |  | ) |

virtual

Returns the length of the payload at the current term position.

Reimplemented from Lucene::TermPositions.

virtual bool Lucene::SegmentTermPositions::isPayloadAvailable | ( |  | ) |

virtual

Checks if a payload can be loaded at this position.

Reimplemented from Lucene::TermPositions.

virtual void Lucene::SegmentTermPositions::lazySkip | ( |  | ) |

protected virtual

It is not always necessary to move the prox pointer to a new document after the freq pointer has been moved. Consider for example a phrase query with two terms: the freq pointer for term 1 has to move to document x to answer the question if the term occurs in that document. But only if term 2 also matches document x, the positions have to be read to figure out if term 1 and term 2 appear next to each other in document x and thus satisfy the query. So we move the prox pointer lazily to the document as soon as positions are requested.

virtual bool Lucene::SegmentTermPositions::next | ( |  | ) |

virtual

Moves to the next pair in the enumeration.

Reimplemented from Lucene::SegmentTermDocs.

virtual int32_t Lucene::SegmentTermPositions::nextPosition | ( |  | ) |

virtual

Returns next position in the current document.

Reimplemented from Lucene::TermPositions.

virtual int32_t Lucene::SegmentTermPositions::read | ( | Collection< int32_t > | docs,
|  | Collection< int32_t > | freqs
| ) |  |

virtual

Not supported.

Reimplemented from Lucene::SegmentTermDocs.

int32_t Lucene::SegmentTermPositions::readDeltaPosition | ( |  | ) |

protected

virtual void Lucene::SegmentTermPositions::seek | ( | const TermInfoPtr & | ti,
|  | const TermPtr & | term
| ) |  |

virtual

Reimplemented from Lucene::SegmentTermDocs.

boost::shared_ptr< SegmentTermPositions > Lucene::SegmentTermPositions::shared_from_this | ( |  | ) |

inline

virtual void Lucene::SegmentTermPositions::skipPayload | ( |  | ) |

protected virtual

virtual void Lucene::SegmentTermPositions::skippingDoc | ( |  | ) |

protected virtual

Reimplemented from Lucene::SegmentTermDocs.

virtual void Lucene::SegmentTermPositions::skipPositions | ( | int32_t | n | ) |

protected virtual

virtual void Lucene::SegmentTermPositions::skipProx | ( | int64_t | proxPointer,
|  | int32_t | payloadLength
| ) |  |

protected virtual

Overridden by SegmentTermPositions to skip in prox stream.

Reimplemented from Lucene::SegmentTermDocs.

## Field Documentation

int64_t Lucene::SegmentTermPositions::lazySkipPointer

protected

int32_t Lucene::SegmentTermPositions::lazySkipProxCount

protected

bool Lucene::SegmentTermPositions::needToLoadPayload

protected

Indicates whether the payload of the current position has been read from the proxStream yet.

int32_t Lucene::SegmentTermPositions::payloadLength

protected

The current payload length.

int32_t Lucene::SegmentTermPositions::position

protected

int32_t Lucene::SegmentTermPositions::proxCount

protected

IndexInputPtr Lucene::SegmentTermPositions::proxStream

protected

The documentation for this class was generated from the following file:

- SegmentTermPositions.h

clucene.sourceforge.net