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


 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
FieldCacheSource.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 FIELDCACHESOURCE_H
8 #define FIELDCACHESOURCE_H
9 
10 #include "ValueSource.h"
11 
12 namespace Lucene {
13 
28 class LPPAPI FieldCacheSource : public ValueSource {
29 public:
31  FieldCacheSource(const String& field);
32  virtual ~FieldCacheSource();
33 
35 
36 protected:
37  String field;
38 
39 public:
40  virtual DocValuesPtr getValues(const IndexReaderPtr& reader);
41  virtual String description();
42 
47  virtual DocValuesPtr getCachedFieldValues(const FieldCachePtr& cache, const String& field, const IndexReaderPtr& reader) = 0;
48 
49  virtual bool equals(const LuceneObjectPtr& other);
50  virtual int32_t hashCode();
51 
53  virtual bool cachedFieldSourceEquals(const FieldCacheSourcePtr& other) = 0;
54 
57  virtual int32_t cachedFieldSourceHashCode() = 0;
58 };
59 
60 }
61 
62 #endif
boost::shared_ptr< FieldCache > FieldCachePtr
Definition: LuceneTypes.h:334
boost::shared_ptr< LuceneObject > LuceneObjectPtr
Definition: LuceneTypes.h:539
A base class for ValueSource implementations that retrieve values for a single field from the FieldCa...
Definition: FieldCacheSource.h:28
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157
boost::shared_ptr< FieldCacheSource > FieldCacheSourcePtr
Definition: LuceneTypes.h:345
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Definition: AbstractAllTermDocs.h:12
Source of values for basic function queries.
Definition: ValueSource.h:21
boost::shared_ptr< DocValues > DocValuesPtr
Definition: LuceneTypes.h:325

clucene.sourceforge.net