#ifndef _NS_LUCENE_HIGHLIGHTER_H_ #define _NS_LUCENE_HIGHLIGHTER_H_ #include "Xpclucene.h" #include "nsILuceneHighlighter.h" #include "nsCOMPtr.h" #include "nsILuceneQuery.h" #include "nsString.h" #include "nsLuceneStringConverter.h" namespace lucene { namespace search { namespace highlight { class QueryScorer; class Highlighter; class Formatter; class Fragmenter; } } } class nsLuceneHighlighter : public nsILuceneHighlighter { public: NS_DECL_ISUPPORTS NS_DECL_NSILUCENEHIGHLIGHTER nsLuceneHighlighter(nsILuceneQuery* aQuery, const nsAString& aFragmentSeparator, PRInt16 aMaxNumFragmentsRequired, const nsAString& preTag, const nsAString& postTag); private: ~nsLuceneHighlighter(); nsCOMPtr mQuery; PRInt16 mMaxNumFragmentsRequired; nsString mFragmentSeparator; nsLuceneStringConverter* mFragmentSeparator32; lucene::search::highlight::QueryScorer* mScorer; lucene::search::highlight::Highlighter* mHighlighter; lucene::search::highlight::Formatter* mFormatter; lucene::search::highlight::Fragmenter* mFragmenter; protected: /* additional members */ }; #endif // _NS_LUCENE_HIGHLIGHTER_H_