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


Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Attributes
Lucene::OrdFieldSource Class Reference

Obtains the ordinal of the field value from the default Lucene FieldCache using getStringIndex(). More...

#include <OrdFieldSource.h>

+ Inheritance diagram for Lucene::OrdFieldSource:

Public Member Functions

 OrdFieldSource (const String &field)
 Constructor for a certain field.
 
virtual ~OrdFieldSource ()
 
virtual String getClassName ()
 
boost::shared_ptr< OrdFieldSourceshared_from_this ()
 
virtual String description ()
 Description of field, used in explain()
 
virtual DocValuesPtr getValues (const IndexReaderPtr &reader)
 Return the DocValues used by the function query.
 
virtual bool equals (const LuceneObjectPtr &other)
 Needed for possible caching of query results - used by ValueSourceQuery#equals(LuceneObjectPtr).
 
virtual int32_t hashCode ()
 Needed for possible caching of query results - used by ValueSourceQuery#hashCode().
 
- Public Member Functions inherited from Lucene::ValueSource
virtual ~ValueSource ()
 
boost::shared_ptr< ValueSourceshared_from_this ()
 
virtual String toString ()
 Returns a string representation of the object.
 
- 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.
 
virtual LuceneObjectPtr clone (const LuceneObjectPtr &other=LuceneObjectPtr())
 Return clone of this object.
 
virtual int32_t compareTo (const LuceneObjectPtr &other)
 Compare two objects.
 
- Public Member Functions inherited from Lucene::LuceneSync
virtual ~LuceneSync ()
 
virtual SynchronizePtr getSync ()
 Return this object synchronize lock.
 
virtual LuceneSignalPtr getSignal ()
 Return this object signal.
 
virtual void lock (int32_t timeout=0)
 Lock this object using an optional timeout.
 
virtual void unlock ()
 Unlock this object.
 
virtual bool holdsLock ()
 Returns true if this object is currently locked by current thread.
 
virtual void wait (int32_t timeout=0)
 Wait for signal using an optional timeout.
 
virtual void notifyAll ()
 Notify all threads waiting for signal.
 

Static Public Member Functions

static String _getClassName ()
 
- Static Public Member Functions inherited from Lucene::ValueSource
static String _getClassName ()
 

Protected Attributes

String field
 
- Protected Attributes inherited from Lucene::LuceneSync
SynchronizePtr objectLock
 
LuceneSignalPtr objectSignal
 

Additional Inherited Members

- Protected Member Functions inherited from Lucene::LuceneObject
 LuceneObject ()
 

Detailed Description

Obtains the ordinal of the field value from the default Lucene FieldCache using getStringIndex().

The native lucene index order is used to assign an ordinal value for each field value.

Field values (terms) are lexicographically ordered by unicode value, and numbered starting at 1. Example: If there were only three field values: "apple","banana","pear" then ord("apple")=1, ord("banana")=2, ord("pear")=3

WARNING: ord() depends on the position in an index and can thus change when other documents are inserted or deleted, or if a MultiSearcher is used.

NOTE: with the switch in 2.9 to segment-based searching, if getValues is invoked with a composite (multi-segment) reader, this can easily cause double RAM usage for the values in the FieldCache. It's best to switch your application to pass only atomic (single segment) readers to this API. Alternatively, for a short-term fix, you could wrap your ValueSource using MultiValueSource, which costs more CPU per lookup but will not consume double the FieldCache RAM.

Constructor & Destructor Documentation

◆ OrdFieldSource()

Lucene::OrdFieldSource::OrdFieldSource ( const String &  field)

Constructor for a certain field.

Parameters
fieldfield whose values order is used.

◆ ~OrdFieldSource()

virtual Lucene::OrdFieldSource::~OrdFieldSource ( )
virtual

Member Function Documentation

◆ _getClassName()

static String Lucene::OrdFieldSource::_getClassName ( )
inlinestatic

◆ description()

virtual String Lucene::OrdFieldSource::description ( )
virtual

Description of field, used in explain()

Implements Lucene::ValueSource.

◆ equals()

virtual bool Lucene::OrdFieldSource::equals ( const LuceneObjectPtr other)
virtual

Needed for possible caching of query results - used by ValueSourceQuery#equals(LuceneObjectPtr).

Implements Lucene::ValueSource.

◆ getClassName()

virtual String Lucene::OrdFieldSource::getClassName ( )
inlinevirtual

Reimplemented from Lucene::ValueSource.

◆ getValues()

virtual DocValuesPtr Lucene::OrdFieldSource::getValues ( const IndexReaderPtr reader)
virtual

Return the DocValues used by the function query.

Parameters
readerThe IndexReader used to read these values. If any caching is involved, that caching would also be IndexReader based.

Implements Lucene::ValueSource.

◆ hashCode()

virtual int32_t Lucene::OrdFieldSource::hashCode ( )
virtual

Needed for possible caching of query results - used by ValueSourceQuery#hashCode().

Implements Lucene::ValueSource.

◆ shared_from_this()

boost::shared_ptr< OrdFieldSource > Lucene::OrdFieldSource::shared_from_this ( )
inline

Field Documentation

◆ field

String Lucene::OrdFieldSource::field
protected

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

clucene.sourceforge.net