vfs: check userland buffers before reading them.
[haiku.git] / src / add-ons / index_server / fulltext / FullTextAnalyser.h
blobb97fb575e220a213f5e6d1f6b1768261be798f5d
1 /*
2 * Copyright 2010, Haiku.
3 * Distributed under the terms of the MIT License.
5 * Authors:
6 * Clemens Zeidler <haiku@clemens-zeidler.de>
7 */
8 #ifndef FULL_TEXT_ANALYSER_H
9 #define FULL_TEXT_ANALYSER_H
12 #include "IndexServerAddOn.h"
14 #include <Path.h>
16 #include "TextDataBase.h"
19 const char* kFullTextDirectory = "FullTextAnalyser";
22 class FullTextAnalyser : public FileAnalyser {
23 public:
24 FullTextAnalyser(BString name,
25 const BVolume& volume);
26 ~FullTextAnalyser();
28 status_t InitCheck();
30 void AnalyseEntry(const entry_ref& ref);
31 void DeleteEntry(const entry_ref& ref);
32 void MoveEntry(const entry_ref& oldRef,
33 const entry_ref& newRef);
34 void LastEntry();
36 private:
37 inline bool _InterestingEntry(const entry_ref& ref);
38 inline bool _IsInIndexDirectory(const entry_ref& ref);
40 TextWriteDataBase* fWriteDataBase;
41 BPath fDataBasePath;
43 uint32 fNUncommited;
47 class FullTextAddOn : public IndexServerAddOn {
48 public:
49 FullTextAddOn(image_id id, const char* name);
51 FileAnalyser* CreateFileAnalyser(const BVolume& volume);
54 #endif