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

FilteredDocIdSetIterator.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2014 Alan Wright. All rights reserved.
3 // Distributable under the terms of either the Apache License (Version 2.0)
4 // or the GNU Lesser General Public License.
6
7 #ifndef FILTEREDDOCIDSETITERATOR_H
8 #define FILTEREDDOCIDSETITERATOR_H
9
10 #include "DocIdSetIterator.h"
11
12 namespace Lucene {
13
16 class LPPAPI FilteredDocIdSetIterator : public DocIdSetIterator {
17 public:
19 FilteredDocIdSetIterator(const DocIdSetIteratorPtr& innerIter);
20 virtual ~FilteredDocIdSetIterator();
21
22 LUCENE_CLASS(FilteredDocIdSetIterator);
23
24 protected:
25 DocIdSetIteratorPtr innerIter;
26 int32_t doc;
27
28 public:
29 virtual int32_t docID();
30 virtual int32_t nextDoc();
31 virtual int32_t advance(int32_t target);
32
33 protected:
38 virtual bool match(int32_t docid) = 0;
39 };
40
41 }
42
43 #endif
Lucene::FilteredDocIdSetIterator
Abstract decorator class of a DocIdSetIterator implementation that provides on-demand filter/validati...
Definition: FilteredDocIdSetIterator.h:16
Lucene::FilteredDocIdSetIterator::doc
int32_t doc
Definition: FilteredDocIdSetIterator.h:26
Lucene::DocIdSetIterator
This abstract class defines methods to iterate over a set of non-decreasing doc ids. Note that this class assumes it iterates on doc Ids, and therefore NO_MORE_DOCS is set to { NO_MORE_DOCS} in order to be used as a sentinel object. Implementations of this class are expected to consider INT_MAX as an invalid value.
Definition: DocIdSetIterator.h:17
DocIdSetIterator.h
Lucene::DocIdSetIteratorPtr
boost::shared_ptr< DocIdSetIterator > DocIdSetIteratorPtr
Definition: LuceneTypes.h:324
LUCENE_CLASS
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Lucene
Definition: AbstractAllTermDocs.h:12

clucene.sourceforge.net