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

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
MappingCharFilter.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2011 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 MAPPINGCHARFILTER_H
8 #define MAPPINGCHARFILTER_H
9
10 #include "BaseCharFilter.h"
11
12 namespace Lucene
13 {
16 class LPPAPI MappingCharFilter : public BaseCharFilter
17 {
18 public:
20 MappingCharFilter(NormalizeCharMapPtr normMap, CharStreamPtr in);
21
23 MappingCharFilter(NormalizeCharMapPtr normMap, ReaderPtr in);
24
25 virtual ~MappingCharFilter();
26
27 LUCENE_CLASS(MappingCharFilter);
28
29 protected:
30 NormalizeCharMapPtr normMap;
31 Collection<wchar_t> buffer;
32 String replacement;
33 int32_t charPointer;
34 int32_t nextCharCounter;
35
36 public:
37 virtual int32_t read();
38 virtual int32_t read(wchar_t* buffer, int32_t offset, int32_t length);
39
40 protected:
41 int32_t nextChar();
42 void pushChar(int32_t c);
43 void pushLastChar(int32_t c);
44 NormalizeCharMapPtr match(NormalizeCharMapPtr map);
45 };
46 }
47
48 #endif

clucene.sourceforge.net