presage  0.9.2~beta
ngram.h
Go to the documentation of this file.
1 
2 /******************************************************
3  * Presage, an extensible predictive text entry system
4  * ---------------------------------------------------
5  *
6  * Copyright (C) 2008 Matteo Vescovi <matteo.vescovi@yahoo.co.uk>
7 
8  This program is free software; you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation; either version 2 of the License, or
11  (at your option) any later version.
12 
13  This program is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License along
19  with this program; if not, write to the Free Software Foundation, Inc.,
20  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21  *
22  **********(*)*/
23 
24 
25 #ifndef PRESAGE_NGRAM
26 #define PRESAGE_NGRAM
27 
28 #include <iostream>
29 #include <string>
30 #include <vector>
31 #include <assert.h>
32 
33 class Ngram {
34  friend std::ostream& operator<<( std::ostream&, const Ngram& );
35 public:
36  Ngram(const int N);
37  ~Ngram();
38 
39  int getN() const;
40 
41  std::string getNgram(const int n) const;
42  void setNgram(const int n, const std::string str);
43 
44  bool operator<( const Ngram& ) const;
45  Ngram& operator=( const Ngram& );
46 
47  std::string toString() const;
48 
49 private:
50  int N;
51  std::string* ngrams;
52 
53 };
54 
55 #endif // PRESAGE_NGRAM
std::string toString() const
Definition: ngram.cpp:64
int N
Definition: ngram.h:50
void setNgram(const int n, const std::string str)
Definition: ngram.cpp:79
Ngram(const int N)
Definition: ngram.cpp:27
std::string getNgram(const int n) const
Definition: ngram.cpp:73
Ngram & operator=(const Ngram &)
Definition: ngram.cpp:39
bool operator<(const Ngram &) const
Definition: ngram.cpp:51
int getN() const
Definition: ngram.cpp:85
friend std::ostream & operator<<(std::ostream &, const Ngram &)
Definition: ngram.cpp:90
std::string * ngrams
Definition: ngram.h:51
~Ngram()
Definition: ngram.cpp:34
Definition: ngram.h:33