Lucene++ - a full-featured, c++ search engine
API Documentation
#include <PhraseQueue.h>
Public Member Functions | |
PhraseQueue (int32_t size) | |
virtual | ~PhraseQueue () |
virtual String | getClassName () |
boost::shared_ptr< PhraseQueue > | shared_from_this () |
![]() | |
PriorityQueue (int32_t maxSize) | |
virtual | ~PriorityQueue () |
virtual void | initialize () |
Called directly after instantiation to create objects that depend on this object being fully constructed. | |
int32_t | maxSize () |
Return maximum size of queue. | |
PhrasePositionsStar | add (const PhrasePositionsStar &type) |
Adds an Object to a PriorityQueue in log(size) time. If one tries to add more objects than maxSize from initialize an IndexOutOfBoundsException is thrown. | |
PhrasePositionsStar | addOverflow (const PhrasePositionsStar &type) |
Adds an Object to a PriorityQueue in log(size) time. It returns the object (if any) that was dropped off the heap because it was full. This can be the given parameter (in case it is smaller than the full heap's minimum, and couldn't be added), or another object that was previously the smallest value in the heap and now has been replaced by a larger one, or null if the queue wasn't yet full with maxSize elements. | |
PhrasePositionsStar | top () |
Returns the least element of the PriorityQueue. | |
PhrasePositionsStar | pop () |
Removes and returns the least element of the PriorityQueue. | |
PhrasePositionsStar | updateTop () |
Should be called when the Object at top changes values. | |
int32_t | size () const |
Returns the number of elements currently stored in the PriorityQueue. | |
bool | empty () const |
Returns whether PriorityQueue is currently empty. | |
void | clear () |
Removes all entries from the PriorityQueue. | |
![]() | |
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. | |
![]() | |
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 () |
Protected Member Functions | |
virtual bool | lessThan (const PhrasePositionsStar &first, const PhrasePositionsStar &second) |
Determines the ordering of objects in this priority queue. Subclasses must define this one method. | |
![]() | |
void | upHeap () |
void | downHeap () |
virtual PhrasePositionsStar | getSentinelObject () |
This method can be overridden by extending classes to return a sentinel object which will be used by initialize to fill the queue, so that the code which uses that queue can always assume it's full and only change the top without attempting to insert any new object. | |
![]() | |
LuceneObject () | |
Additional Inherited Members | |
![]() | |
typedef std::vector< PhrasePositionsStar > | heap_type |
![]() | |
heap_type | heap |
int32_t | _size |
int32_t | _maxSize |
![]() | |
SynchronizePtr | objectLock |
LuceneSignalPtr | objectSignal |
Lucene::PhraseQueue::PhraseQueue | ( | int32_t | size | ) |
|
virtual |
|
inlinestatic |
|
inlinevirtual |
|
protectedvirtual |
Determines the ordering of objects in this priority queue. Subclasses must define this one method.
Reimplemented from Lucene::PriorityQueue< PhrasePositionsStar >.
|
inline |