CLucene - a full-featured, c++ search engine
API Documentation
#include <MultiSearcher.h>
Public Member Functions | |
| MultiHitCollector (HitCollector *_results, int32_t _start) | |
| void | collect (const int32_t doc, const float_t score) |
| Called once for every non-zero scoring document, with the document number and its score. | |
| lucene::search::MultiHitCollector::MultiHitCollector | ( | HitCollector * | _results, | |
| int32_t | _start | |||
| ) |
| void lucene::search::MultiHitCollector::collect | ( | const int32_t | doc, | |
| const float_t | score | |||
| ) | [virtual] |
Called once for every non-zero scoring document, with the document number and its score.
If, for example, an application wished to collect all of the hits for a query in a BitSet, then it might:
Searcher searcher = new IndexSearcher(indexReader); final BitSet bits = new BitSet(indexReader.maxDoc()); searcher.search(query, new HitCollector() { public void collect(int32_t doc, float score) { bits.set(doc); } });
Note: This is called in an inner search loop. For good search performance, implementations of this method should not call Searcher#doc(int32_t) or IndexReader#document(int32_t) on every document number encountered. Doing so can slow searches by an order of magnitude or more.
Note: The score passed to this method is a raw score. In other words, the score will not necessarily be a float whose value is between 0 and 1.
Implements lucene::search::HitCollector.