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


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

Obtains byte field values from the FieldCache using getBytes() and makes those values available as other numeric types, casting as needed. More...

#include <ByteFieldSource.h>

+ Inheritance diagram for Lucene::ByteFieldSource:

Public Member Functions

 ByteFieldSource (const String &field, const ByteParserPtr &parser=ByteParserPtr())
 Create a cached byte field source with a specific string-to-byte parser.
 
virtual ~ByteFieldSource ()
 
virtual String getClassName ()
 
boost::shared_ptr< ByteFieldSourceshared_from_this ()
 
virtual String description ()
 Description of field, used in explain()
 
virtual DocValuesPtr getCachedFieldValues (const FieldCachePtr &cache, const String &field, const IndexReaderPtr &reader)
 Return cached DocValues for input field and reader.
 
virtual bool cachedFieldSourceEquals (const FieldCacheSourcePtr &other)
 Check if equals to another FieldCacheSource, already knowing that cache and field are equal.
 
virtual int32_t cachedFieldSourceHashCode ()
 Return a hash code of a FieldCacheSource, without the hash-codes of the field and the cache (those are taken care of elsewhere).
 
- Public Member Functions inherited from Lucene::FieldCacheSource
 FieldCacheSource (const String &field)
 Create a cached field source for the input field.
 
virtual ~FieldCacheSource ()
 
boost::shared_ptr< FieldCacheSourceshared_from_this ()
 
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::FieldCacheSource
static String _getClassName ()
 
- Static Public Member Functions inherited from Lucene::ValueSource
static String _getClassName ()
 

Protected Attributes

ByteParserPtr parser
 
- Protected Attributes inherited from Lucene::FieldCacheSource
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 byte field values from the FieldCache using getBytes() and makes those values available as other numeric types, casting as needed.

See also
FieldCacheSource for requirements on the field.

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

◆ ByteFieldSource()

Lucene::ByteFieldSource::ByteFieldSource ( const String &  field,
const ByteParserPtr parser = ByteParserPtr() 
)

Create a cached byte field source with a specific string-to-byte parser.

◆ ~ByteFieldSource()

virtual Lucene::ByteFieldSource::~ByteFieldSource ( )
virtual

Member Function Documentation

◆ _getClassName()

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

◆ cachedFieldSourceEquals()

virtual bool Lucene::ByteFieldSource::cachedFieldSourceEquals ( const FieldCacheSourcePtr other)
virtual

Check if equals to another FieldCacheSource, already knowing that cache and field are equal.

Implements Lucene::FieldCacheSource.

◆ cachedFieldSourceHashCode()

virtual int32_t Lucene::ByteFieldSource::cachedFieldSourceHashCode ( )
virtual

Return a hash code of a FieldCacheSource, without the hash-codes of the field and the cache (those are taken care of elsewhere).

Implements Lucene::FieldCacheSource.

◆ description()

virtual String Lucene::ByteFieldSource::description ( )
virtual

Description of field, used in explain()

Reimplemented from Lucene::FieldCacheSource.

◆ getCachedFieldValues()

virtual DocValuesPtr Lucene::ByteFieldSource::getCachedFieldValues ( const FieldCachePtr cache,
const String &  field,
const IndexReaderPtr reader 
)
virtual

Return cached DocValues for input field and reader.

Parameters
cacheFieldCache so that values of a field are loaded once per reader (RAM allowing)
fieldField for which values are required.
See also
ValueSource

Implements Lucene::FieldCacheSource.

◆ getClassName()

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

Reimplemented from Lucene::FieldCacheSource.

◆ shared_from_this()

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

Field Documentation

◆ parser

ByteParserPtr Lucene::ByteFieldSource::parser
protected

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

clucene.sourceforge.net