PhraseHunter::SearchEngine Class Reference

Class that provides functionality for querying a corpus. More...

#include <searchengine.h>

Collaboration diagram for PhraseHunter::SearchEngine:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SearchEngine (SQLitePP::SqliteDB &sqlite)
 Constructor. Should not be called directly. Instead, use CorpusManager::searchEngine().
 ~SearchEngine ()
TokenPtr searchToken (schma::UnicodePtr stringtoken) const
 Search for a single-word Token. For phrases, use searchPhrase().
TokenPtr searchPhrase (schma::UnicodePtr search_string) const
 Search for a Phrase.
TokenVector searchRegexToken (schma::UnicodePtr re) const
 Search for all tokens that match a regular expression.
TokenVector searchPhrasalRegex (schma::UnicodePtr re) const
 Search for all Phrase tokens, where each word matches the respective regex.

Private Member Functions

template<typename _RandomAccessIt, typename _MinChooser, typename _Merger, typename _Validator>
_RandomAccessIt::value_type combine (_RandomAccessIt begin, _RandomAccessIt end, _MinChooser better, _Merger merge, _Validator valid) const
std::string cutRegex (const std::string &re) const

Private Attributes

SQLitePP::SqliteDBm_db
const std::string SPECIAL_CHARACTERS

Detailed Description

Class that provides functionality for querying a corpus.

Definition at line 36 of file searchengine.h.


Constructor & Destructor Documentation

PhraseHunter::SearchEngine::SearchEngine ( SQLitePP::SqliteDB sqlite  ) 

Constructor. Should not be called directly. Instead, use CorpusManager::searchEngine().

Definition at line 33 of file searchengine.cpp.

PhraseHunter::SearchEngine::~SearchEngine (  )  [inline]

Definition at line 42 of file searchengine.h.


Member Function Documentation

TokenPtr PhraseHunter::SearchEngine::searchToken ( schma::UnicodePtr  stringtoken  )  const

Search for a single-word Token. For phrases, use searchPhrase().

Definition at line 138 of file searchengine.cpp.

References SQLitePP::SqliteDB::cachedStatement(), SQLitePP::ResultIterator::get(), SQLitePP::ResultIterator::hasMoreRows(), PhraseHunter::EmptyToken::instance(), PhraseHunter::CorpusToken::loadFromCorpus(), and m_db.

Referenced by PhraseHunter::StatisticsEngine::mutual_information(), SearchTab::search(), searchPhrase(), and searchRegexToken().

TokenPtr PhraseHunter::SearchEngine::searchPhrase ( schma::UnicodePtr  search_string  )  const

Search for a Phrase.

Definition at line 173 of file searchengine.cpp.

References combine(), PhraseHunter::Tokenizer::hasMoreTokens(), PhraseHunter::EmptyToken::instance(), PhraseHunter::Tokenizer::nextUnencodedToken(), searchToken(), and schma::toStdString().

Referenced by PhraseHunter::StatisticsEngine::mutual_information(), SearchTab::search(), and time_serge().

TokenVector PhraseHunter::SearchEngine::searchRegexToken ( schma::UnicodePtr  re  )  const

Search for all tokens that match a regular expression.

Parameters:
re The regular expression to match.

Definition at line 37 of file searchengine.cpp.

References cutRegex(), m_db, searchToken(), SQLitePP::SqliteDB::statement(), and schma::toStdString().

Referenced by SearchTab::search(), and searchPhrasalRegex().

TokenVector PhraseHunter::SearchEngine::searchPhrasalRegex ( schma::UnicodePtr  re  )  const

Search for all Phrase tokens, where each word matches the respective regex.

Parameters:
re The phrasal regular expression.

Definition at line 96 of file searchengine.cpp.

References combine(), searchRegexToken(), schma::splitString(), and schma::toStdString().

Referenced by SearchTab::search(), and time_serge().

template<typename _RandomAccessIt, typename _MinChooser, typename _Merger, typename _Validator>
_RandomAccessIt::value_type PhraseHunter::SearchEngine::combine ( _RandomAccessIt  begin,
_RandomAccessIt  end,
_MinChooser  better,
_Merger  merge,
_Validator  valid 
) const [private]

Definition at line 201 of file searchengine.cpp.

Referenced by searchPhrasalRegex(), and searchPhrase().

std::string PhraseHunter::SearchEngine::cutRegex ( const std::string &  re  )  const [private]

Definition at line 122 of file searchengine.cpp.

References SPECIAL_CHARACTERS.

Referenced by searchRegexToken().


Member Data Documentation

SQLitePP::SqliteDB& PhraseHunter::SearchEngine::m_db [private]

Definition at line 73 of file searchengine.h.

Referenced by searchRegexToken(), and searchToken().

const std::string PhraseHunter::SearchEngine::SPECIAL_CHARACTERS [private]

Definition at line 74 of file searchengine.h.

Referenced by cutRegex().


The documentation for this class was generated from the following files:
Generated on Thu Dec 21 16:14:44 2006 for The Phrasehunter by  doxygen 1.5.1