summaryrefslogtreecommitdiff
path: root/decoder/tdict.cc
diff options
context:
space:
mode:
authorgraehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f>2010-07-27 04:59:37 +0000
committergraehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f>2010-07-27 04:59:37 +0000
commitcc7ee5e3f6ac08750b80e468b77e8ad732e48b77 (patch)
tree2bd8688735602402918b02747ed7557a1aed97d4 /decoder/tdict.cc
parentd038d9d39793f140c97bf71163fa0556ad015014 (diff)
fsa feature templated Accum interface, phrase interface allows exceeding markov order e.g. unigram state, 3gram lm. use Accum,set_value rather than clear,add_value. warning: 3gram fsa lm disagrees with bottom-up in 4th decimal place
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@431 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'decoder/tdict.cc')
-rw-r--r--decoder/tdict.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/decoder/tdict.cc b/decoder/tdict.cc
index 6794bc79..7b56d259 100644
--- a/decoder/tdict.cc
+++ b/decoder/tdict.cc
@@ -85,6 +85,17 @@ std::string TD::GetString(const std::vector<WordID>& str) {
return o.str();
}
+std::string TD::GetString(WordID const* i,WordID const* e) {
+ ostringstream o;
+ bool sp=false;
+ for (;i<e;++i,sp=true) {
+ if (sp)
+ o << ' ';
+ o << TD::Convert(*i);
+ }
+ return o.str();
+}
+
int TD::AppendString(const WordID& w, int pos, int bufsize, char* buffer)
{
const char* word = TD::Convert(w);