Lucene++ - a full-featured, c++ search engine
API Documentation
Go to the documentation of this file.
7 #ifndef FIELDCOMPARATOR_H
8 #define FIELDCOMPARATOR_H
53 virtual int32_t compare(int32_t slot1, int32_t slot2) = 0;
58 virtual void setBottom(int32_t slot) = 0;
69 virtual int32_t compareBottom(int32_t doc) = 0;
75 virtual void copy(int32_t slot, int32_t doc) = 0;
81 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase) = 0;
85 virtual void setScorer(
const ScorerPtr& scorer);
90 virtual ComparableValue value(int32_t slot) = 0;
93 template <
typename TYPE>
112 virtual int32_t
compare(int32_t slot1, int32_t slot2) {
120 virtual void copy(int32_t slot, int32_t doc) {
128 virtual ComparableValue
value(int32_t slot) {
129 return ComparableValue(
values[slot]);
145 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
160 virtual int32_t compareBottom(int32_t doc);
161 virtual void copy(int32_t slot, int32_t doc);
162 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
177 virtual int32_t compare(int32_t slot1, int32_t slot2);
178 virtual int32_t compareBottom(int32_t doc);
179 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
194 virtual int32_t compare(int32_t slot1, int32_t slot2);
195 virtual int32_t compareBottom(int32_t doc);
196 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
211 virtual int32_t compare(int32_t slot1, int32_t slot2);
212 virtual int32_t compareBottom(int32_t doc);
213 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
230 virtual int32_t compare(int32_t slot1, int32_t slot2);
231 virtual int32_t compareBottom(int32_t doc);
232 virtual void copy(int32_t slot, int32_t doc);
233 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
234 virtual void setScorer(
const ScorerPtr& scorer);
253 virtual int32_t compare(int32_t slot1, int32_t slot2);
254 virtual int32_t compareBottom(int32_t doc);
255 virtual void copy(int32_t slot, int32_t doc);
256 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
257 virtual void setBottom(int32_t slot);
258 virtual ComparableValue value(int32_t slot);
290 virtual int32_t compare(int32_t slot1, int32_t slot2);
291 virtual int32_t compareBottom(int32_t doc);
292 virtual void copy(int32_t slot, int32_t doc);
293 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
294 virtual void setBottom(int32_t slot);
295 virtual ComparableValue value(int32_t slot);
297 virtual int32_t getBottomSlot();
298 virtual String getField();
301 void convert(int32_t slot);
302 int32_t binarySearch(
Collection<String> lookup,
const String& key, int32_t low, int32_t high);
321 virtual int32_t compare(int32_t slot1, int32_t slot2);
322 virtual int32_t compareBottom(int32_t doc);
323 virtual void copy(int32_t slot, int32_t doc);
324 virtual void setNextReader(
const IndexReaderPtr& reader, int32_t docBase);
325 virtual void setBottom(int32_t slot);
326 virtual ComparableValue value(int32_t slot);
Collection< int32_t > order
Definition: FieldComparator.h:280
String bottom
Definition: FieldComparator.h:318
int32_t bottomSlot
Definition: FieldComparator.h:283
Parses field's values as int (using FieldCache#getInts and sorts by ascending value.
Definition: FieldComparator.h:183
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Collection< String > values
Definition: FieldComparator.h:312
Utility template class to handle collections that can be safely copied and shared.
Definition: Collection.h:17
String bottomValue
Definition: FieldComparator.h:285
TYPE bottom
Definition: FieldComparator.h:109
NumericComparator(int32_t numHits, const String &field=EmptyString)
Definition: FieldComparator.h:96
int32_t sortPos
Definition: FieldComparator.h:287
bool reversed
Definition: FieldComparator.h:286
Sorts by field's natural String sort order. All comparisons are done using String....
Definition: FieldComparator.h:307
virtual int32_t compareBottom(int32_t doc)
Compare the bottom of the queue with doc. This will only invoked after setBottom has been called....
Definition: FieldComparator.h:116
String bottom
Definition: FieldComparator.h:250
Collection< int32_t > readerGen
Definition: FieldComparator.h:276
boost::shared_ptr< Collator > CollatorPtr
Definition: LuceneTypes.h:525
CollatorPtr collator
Definition: FieldComparator.h:249
virtual void copy(int32_t slot, int32_t doc)
This method is called when a new hit is competitive. You should copy any state associated with this d...
Definition: FieldComparator.h:120
A FieldComparator compares hits so as to determine their sort order when collecting the top results w...
Definition: FieldComparator.h:42
Collection< String > lookup
Definition: FieldComparator.h:279
Parses field's values as long (using FieldCache#getLongs and sorts by ascending value.
Definition: FieldComparator.h:200
Collection< TYPE > values
Definition: FieldComparator.h:106
String field
Definition: FieldComparator.h:317
int32_t currentReaderGen
Definition: FieldComparator.h:278
Definition: AbstractAllTermDocs.h:12
String field
Definition: FieldComparator.h:248
Sorts by field's natural String sort order, using ordinals. This is functionally equivalent to {},...
Definition: FieldComparator.h:266
Base class for all Lucene classes.
Definition: LuceneObject.h:31
boost::shared_ptr< DoubleParser > DoubleParserPtr
Definition: LuceneTypes.h:328
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157
Collection< String > values
Definition: FieldComparator.h:275
int32_t bottomOrd
Definition: FieldComparator.h:284
boost::shared_ptr< LongParser > LongParserPtr
Definition: LuceneTypes.h:378
boost::shared_ptr< IntParser > IntParserPtr
Definition: LuceneTypes.h:376
Parses field's values as byte (using FieldCache#getBytes and sorts by ascending value.
Definition: FieldComparator.h:134
virtual int32_t compare(int32_t slot1, int32_t slot2)
Compare hit at slot1 with hit at slot2.
Definition: FieldComparator.h:112
String field
Definition: FieldComparator.h:108
Sorts by a field's value using the Collator for a given Locale.
Definition: FieldComparator.h:238
Sorts by ascending docID.
Definition: FieldComparator.h:149
Sorts by descending relevance. NOTE: if you are sorting only by descending relevance and then seconda...
Definition: FieldComparator.h:219
boost::shared_ptr< Scorer > ScorerPtr
Definition: LuceneTypes.h:429
String field
Definition: FieldComparator.h:281
static this_type newInstance(int32_t size=0)
Definition: Collection.h:33
virtual ~NumericComparator()
Definition: FieldComparator.h:102
boost::shared_ptr< ByteParser > ByteParserPtr
Definition: LuceneTypes.h:289
boost::shared_ptr< Parser > ParserPtr
Definition: LuceneTypes.h:401
Parses field's values as double (using FieldCache#getDoubles and sorts by ascending value.
Definition: FieldComparator.h:166
virtual ComparableValue value(int32_t slot)
Return the actual value in the slot.
Definition: FieldComparator.h:128
Definition: FieldComparator.h:94
Collection< String > currentReaderValues
Definition: FieldComparator.h:316
virtual void setBottom(int32_t slot)
Set the bottom slot, ie the "weakest" (sorted last) entry in the queue. When compareBottom is called,...
Definition: FieldComparator.h:124
Collection< String > values
Definition: FieldComparator.h:243
Collection< TYPE > currentReaderValues
Definition: FieldComparator.h:107
Collection< String > currentReaderValues
Definition: FieldComparator.h:247
clucene.sourceforge.net