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


Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Data Fields | Protected Member Functions
Lucene::DocFieldProcessorPerThread Class Reference

Gathers all Fieldables for a document under the same name, updates FieldInfos, and calls per-field consumers to process field by field. More...

#include <DocFieldProcessorPerThread.h>

+ Inheritance diagram for Lucene::DocFieldProcessorPerThread:

Public Member Functions

 DocFieldProcessorPerThread (const DocumentsWriterThreadStatePtr &threadState, const DocFieldProcessorPtr &docFieldProcessor)
 
virtual ~DocFieldProcessorPerThread ()
 
virtual String getClassName ()
 
boost::shared_ptr< DocFieldProcessorPerThreadshared_from_this ()
 
virtual void initialize ()
 Called directly after instantiation to create objects that depend on this object being fully constructed.
 
virtual void abort ()
 
Collection< DocFieldConsumerPerFieldPtrfields ()
 
void trimFields (const SegmentWriteStatePtr &state)
 
virtual DocWriterPtr processDocument ()
 Process the document. If there is something for this document to be done in docID order, you should encapsulate that as a DocWriter and return it. DocumentsWriter then calls finish() on this object when it's its turn.
 
DocFieldProcessorPerThreadPerDocPtr getPerDoc ()
 
void freePerDoc (const DocFieldProcessorPerThreadPerDocPtr &perDoc)
 
- Public Member Functions inherited from Lucene::DocConsumerPerThread
virtual ~DocConsumerPerThread ()
 
boost::shared_ptr< DocConsumerPerThreadshared_from_this ()
 
- Public Member Functions inherited from Lucene::LuceneObject
virtual ~LuceneObject ()
 
virtual LuceneObjectPtr clone (const LuceneObjectPtr &other=LuceneObjectPtr())
 Return clone of this object.
 
virtual int32_t hashCode ()
 Return hash code for this object.
 
virtual bool equals (const LuceneObjectPtr &other)
 Return whether two objects are equal.
 
virtual int32_t compareTo (const LuceneObjectPtr &other)
 Compare two objects.
 
virtual String toString ()
 Returns a string representation of the object.
 
- 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::DocConsumerPerThread
static String _getClassName ()
 

Data Fields

double docBoost
 
int32_t fieldGen
 
DocFieldProcessorWeakPtr _docFieldProcessor
 
FieldInfosPtr fieldInfos
 
DocFieldConsumerPerThreadPtr consumer
 
Collection< DocFieldProcessorPerFieldPtr_fields
 
int32_t fieldCount
 
Collection< DocFieldProcessorPerFieldPtrfieldHash
 
int32_t hashMask
 
int32_t totalFieldCount
 
StoredFieldsWriterPerThreadPtr fieldsWriter
 
DocStatePtr docState
 
Collection< DocFieldProcessorPerThreadPerDocPtrdocFreeList
 
int32_t freeCount
 
int32_t allocCount
 

Protected Member Functions

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

Additional Inherited Members

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

Detailed Description

Gathers all Fieldables for a document under the same name, updates FieldInfos, and calls per-field consumers to process field by field.

Currently, only a single thread visits the fields, sequentially, for processing.

Constructor & Destructor Documentation

◆ DocFieldProcessorPerThread()

Lucene::DocFieldProcessorPerThread::DocFieldProcessorPerThread ( const DocumentsWriterThreadStatePtr threadState,
const DocFieldProcessorPtr docFieldProcessor 
)

◆ ~DocFieldProcessorPerThread()

virtual Lucene::DocFieldProcessorPerThread::~DocFieldProcessorPerThread ( )
virtual

Member Function Documentation

◆ _getClassName()

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

◆ abort()

virtual void Lucene::DocFieldProcessorPerThread::abort ( )
virtual

◆ fields()

Collection< DocFieldConsumerPerFieldPtr > Lucene::DocFieldProcessorPerThread::fields ( )

◆ freePerDoc()

void Lucene::DocFieldProcessorPerThread::freePerDoc ( const DocFieldProcessorPerThreadPerDocPtr perDoc)

◆ getClassName()

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

Reimplemented from Lucene::DocConsumerPerThread.

◆ getPerDoc()

DocFieldProcessorPerThreadPerDocPtr Lucene::DocFieldProcessorPerThread::getPerDoc ( )

◆ initialize()

virtual void Lucene::DocFieldProcessorPerThread::initialize ( )
virtual

Called directly after instantiation to create objects that depend on this object being fully constructed.

Reimplemented from Lucene::LuceneObject.

◆ processDocument()

virtual DocWriterPtr Lucene::DocFieldProcessorPerThread::processDocument ( )
virtual

Process the document. If there is something for this document to be done in docID order, you should encapsulate that as a DocWriter and return it. DocumentsWriter then calls finish() on this object when it's its turn.

Implements Lucene::DocConsumerPerThread.

◆ rehash()

void Lucene::DocFieldProcessorPerThread::rehash ( )
protected

◆ shared_from_this()

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

◆ trimFields()

void Lucene::DocFieldProcessorPerThread::trimFields ( const SegmentWriteStatePtr state)

Field Documentation

◆ _docFieldProcessor

DocFieldProcessorWeakPtr Lucene::DocFieldProcessorPerThread::_docFieldProcessor

◆ _fields

Collection<DocFieldProcessorPerFieldPtr> Lucene::DocFieldProcessorPerThread::_fields

◆ allocCount

int32_t Lucene::DocFieldProcessorPerThread::allocCount

◆ consumer

DocFieldConsumerPerThreadPtr Lucene::DocFieldProcessorPerThread::consumer

◆ docBoost

double Lucene::DocFieldProcessorPerThread::docBoost

◆ docFreeList

Collection<DocFieldProcessorPerThreadPerDocPtr> Lucene::DocFieldProcessorPerThread::docFreeList

◆ docState

DocStatePtr Lucene::DocFieldProcessorPerThread::docState

◆ fieldCount

int32_t Lucene::DocFieldProcessorPerThread::fieldCount

◆ fieldGen

int32_t Lucene::DocFieldProcessorPerThread::fieldGen

◆ fieldHash

Collection<DocFieldProcessorPerFieldPtr> Lucene::DocFieldProcessorPerThread::fieldHash

◆ fieldInfos

FieldInfosPtr Lucene::DocFieldProcessorPerThread::fieldInfos

◆ fieldsWriter

StoredFieldsWriterPerThreadPtr Lucene::DocFieldProcessorPerThread::fieldsWriter

◆ freeCount

int32_t Lucene::DocFieldProcessorPerThread::freeCount

◆ hashMask

int32_t Lucene::DocFieldProcessorPerThread::hashMask

◆ totalFieldCount

int32_t Lucene::DocFieldProcessorPerThread::totalFieldCount

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

clucene.sourceforge.net