summaryrefslogtreecommitdiff
path: root/gi/pf/transliterations.h
blob: 76eb2a05bb422d71484ce5287166dd0432c915f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef _TRANSLITERATIONS_H_
#define _TRANSLITERATIONS_H_

#include <vector>
#include "wordid.h"
#include "prob.h"

struct TransliterationsImpl;
struct Transliterations {
  explicit Transliterations();
  ~Transliterations();
  void Initialize(WordID src, const std::vector<WordID>& src_lets, WordID trg, const std::vector<WordID>& trg_lets);
  void Forbid(WordID src, const std::vector<WordID>& src_lets, WordID trg, const std::vector<WordID>& trg_lets);
  void GraphSummary() const;
  prob_t EstimateProbability(WordID s, const std::vector<WordID>& src, WordID t, const std::vector<WordID>& trg) const;
 private:
  TransliterationsImpl* pimpl_;
};

#endif