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
include
FilterManager.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 FILTERMANAGER_H
8
#define FILTERMANAGER_H
9
10
#include "
LuceneObject.h
"
11
12
namespace
Lucene {
13
20
class
LPPAPI
FilterManager
:
public
LuceneObject
{
21
public
:
23
FilterManager
();
24
virtual
~
FilterManager
();
25
26
LUCENE_CLASS
(
FilterManager
);
27
28
protected
:
30
static
const
int32_t DEFAULT_CACHE_CLEAN_SIZE;
31
33
static
const
int64_t
DEFAULT_CACHE_SLEEP_TIME
;
34
36
MapIntFilterItem
cache
;
37
39
int32_t
cacheCleanSize
;
40
42
int64_t
cleanSleepTime
;
43
45
FilterCleanerPtr
filterCleaner
;
46
47
public
:
48
virtual
void
initialize();
49
50
static
FilterManagerPtr
getInstance();
51
54
void
setCacheSize(int32_t cacheCleanSize);
55
58
void
setCleanThreadSleepTime(int64_t cleanSleepTime);
59
64
FilterPtr
getFilter(
const
FilterPtr
& filter);
65
66
friend
class
FilterCleaner;
67
};
68
69
}
70
71
#endif
clucene.sourceforge.net