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:
authorHieu Hoang <hieuhoang@gmail.com>2016-06-28 12:46:51 +0300
committerHieu Hoang <hieuhoang@gmail.com>2016-06-28 12:46:51 +0300
commitad240a9f5b13c807e3e5dbe3a6d51f4e40e5ad53 (patch)
tree2ae54a0047db3d6731782f4a664e5bb558705582 /OnDiskPt
parentcef30724d5fc48c0a4258cf67c95f22912603b00 (diff)
move Moses classes out of OnDiskPt - Word
Diffstat (limited to 'OnDiskPt')
-rw-r--r--OnDiskPt/Word.cpp25
-rw-r--r--OnDiskPt/Word.h11
2 files changed, 5 insertions, 31 deletions
diff --git a/OnDiskPt/Word.cpp b/OnDiskPt/Word.cpp
index a68accb34..9ad6bea72 100644
--- a/OnDiskPt/Word.cpp
+++ b/OnDiskPt/Word.cpp
@@ -19,9 +19,7 @@
***********************************************************************/
#include <boost/algorithm/string/predicate.hpp>
-#include "moses/FactorCollection.h"
#include "moses/Util.h"
-#include "moses/Word.h"
#include "Word.h"
#include "util/tokenize_piece.hh"
@@ -98,29 +96,6 @@ size_t Word::ReadFromFile(std::fstream &file)
return memAlloc;
}
-void Word::ConvertToMoses(
- const std::vector<Moses::FactorType> &outputFactorsVec,
- const Vocab &vocab,
- Moses::Word &overwrite) const
-{
- Moses::FactorCollection &factorColl = Moses::FactorCollection::Instance();
- overwrite = Moses::Word(m_isNonTerminal);
-
- if (m_isNonTerminal) {
- const std::string &tok = vocab.GetString(m_vocabId);
- overwrite.SetFactor(0, factorColl.AddFactor(tok, m_isNonTerminal));
- } else {
- // TODO: this conversion should have been done at load time.
- util::TokenIter<util::SingleCharacter> tok(vocab.GetString(m_vocabId), '|');
-
- for (std::vector<Moses::FactorType>::const_iterator t = outputFactorsVec.begin(); t != outputFactorsVec.end(); ++t, ++tok) {
- UTIL_THROW_IF2(!tok, "Too few factors in \"" << vocab.GetString(m_vocabId) << "\"; was expecting " << outputFactorsVec.size());
- overwrite.SetFactor(*t, factorColl.AddFactor(*tok, m_isNonTerminal));
- }
- UTIL_THROW_IF2(tok, "Too many factors in \"" << vocab.GetString(m_vocabId) << "\"; was expecting " << outputFactorsVec.size());
- }
-}
-
int Word::Compare(const Word &compare) const
{
int ret;
diff --git a/OnDiskPt/Word.h b/OnDiskPt/Word.h
index 39ebf336b..f5cbf39a8 100644
--- a/OnDiskPt/Word.h
+++ b/OnDiskPt/Word.h
@@ -67,14 +67,13 @@ public:
size_t ReadFromMemory(const char *mem);
size_t ReadFromFile(std::fstream &file);
- void SetVocabId(uint32_t vocabId) {
- m_vocabId = vocabId;
+ uint64_t GetVocabId() const {
+ return m_vocabId;
}
- void ConvertToMoses(
- const std::vector<Moses::FactorType> &outputFactorsVec,
- const Vocab &vocab,
- Moses::Word &overwrite) const;
+ void SetVocabId(uint64_t vocabId) {
+ m_vocabId = vocabId;
+ }
void DebugPrint(std::ostream &out, const Vocab &vocab) const;
inline const std::string &GetString(const Vocab &vocab) const {