Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/moses-smt/mosesdecoder.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/moses2/PhraseBased/TargetPhraseImpl.cpp')
-rw-r--r--contrib/moses2/PhraseBased/TargetPhraseImpl.cpp52
1 files changed, 52 insertions, 0 deletions
diff --git a/contrib/moses2/PhraseBased/TargetPhraseImpl.cpp b/contrib/moses2/PhraseBased/TargetPhraseImpl.cpp
new file mode 100644
index 000000000..3768ca278
--- /dev/null
+++ b/contrib/moses2/PhraseBased/TargetPhraseImpl.cpp
@@ -0,0 +1,52 @@
+/*
+ * TargetPhraseImpl.cpp
+ *
+ * Created on: 23 Oct 2015
+ * Author: hieu
+ */
+
+#include <sstream>
+#include <stdlib.h>
+#include "TargetPhraseImpl.h"
+#include "../Scores.h"
+#include "../System.h"
+#include "../MemPool.h"
+#include "Manager.h"
+
+using namespace std;
+
+namespace Moses2
+{
+
+TargetPhraseImpl *TargetPhraseImpl::CreateFromString(MemPool &pool,
+ const PhraseTable &pt, const System &system, const std::string &str)
+{
+ FactorCollection &vocab = system.GetVocab();
+
+ vector<string> toks = Tokenize(str);
+ size_t size = toks.size();
+ TargetPhraseImpl *ret =
+ new (pool.Allocate<TargetPhraseImpl>()) TargetPhraseImpl(pool, pt, system,
+ size);
+ ret->PhraseImplTemplate<Word>::CreateFromString(vocab, system, toks);
+
+ return ret;
+}
+
+TargetPhraseImpl::TargetPhraseImpl(MemPool &pool, const PhraseTable &pt,
+ const System &system, size_t size)
+:Moses2::TargetPhrase<Moses2::Word>(pool, pt, system, size)
+{
+ m_scores = new (pool.Allocate<Scores>()) Scores(system, pool,
+ system.featureFunctions.GetNumScores());
+
+ size_t numWithPtData = system.featureFunctions.GetWithPhraseTableInd().size();
+ ffData = new (pool.Allocate<void *>(numWithPtData)) void *[numWithPtData];
+}
+
+TargetPhraseImpl::~TargetPhraseImpl()
+{
+ // TODO Auto-generated destructor stub
+}
+
+}