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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
CachingSpanFilter.h
Go to the documentation of this file.
1 
2 // 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 CACHINGSPANFILTER_H
8 #define CACHINGSPANFILTER_H
9 
10 #include "SpanFilter.h"
11 #include "CachingWrapperFilter.h"
12 
13 namespace Lucene {
14 
17 class LPPAPI CachingSpanFilter : public SpanFilter {
18 public:
21  virtual ~CachingSpanFilter();
22 
24 
25 protected:
26  SpanFilterPtr filter;
28 
29 public:
30  // for testing
31  int32_t hitCount;
32  int32_t missCount;
33 
34 public:
35  virtual DocIdSetPtr getDocIdSet(const IndexReaderPtr& reader);
36  virtual SpanFilterResultPtr bitSpans(const IndexReaderPtr& reader);
37 
38  virtual String toString();
39  virtual bool equals(const LuceneObjectPtr& other);
40  virtual int32_t hashCode();
41 
42 protected:
43  SpanFilterResultPtr getCachedResult(const IndexReaderPtr& reader);
44 };
45 
46 }
47 
48 #endif

clucene.sourceforge.net