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:
-rw-r--r--moses-chart-cmd/src/IOWrapper.cpp4
-rw-r--r--moses-chart-cmd/src/IOWrapper.h4
-rw-r--r--moses-cmd/moses-cmd.xcodeproj/project.pbxproj3
-rw-r--r--moses/src/Parameter.cpp1
-rw-r--r--moses/src/StaticData.cpp7
-rw-r--r--moses/src/StaticData.h6
6 files changed, 16 insertions, 9 deletions
diff --git a/moses-chart-cmd/src/IOWrapper.cpp b/moses-chart-cmd/src/IOWrapper.cpp
index f032cd6a1..b5d503133 100644
--- a/moses-chart-cmd/src/IOWrapper.cpp
+++ b/moses-chart-cmd/src/IOWrapper.cpp
@@ -129,6 +129,10 @@ IOWrapper::~IOWrapper()
delete m_singleBestOutputCollector;
}
+void IOWrapper::ResetTranslationId() {
+ m_translationId = StaticData::Instance().GetStartTranslationId();
+}
+
InputType*IOWrapper::GetInput(InputType* inputType)
{
if(inputType->Read(*m_inputStream, m_inputFactorOrder)) {
diff --git a/moses-chart-cmd/src/IOWrapper.h b/moses-chart-cmd/src/IOWrapper.h
index c606774e1..5936e7405 100644
--- a/moses-chart-cmd/src/IOWrapper.h
+++ b/moses-chart-cmd/src/IOWrapper.h
@@ -85,9 +85,7 @@ public:
void OutputDetailedTranslationReport(const Moses::ChartHypothesis *hypo, long translationId);
void Backtrack(const Moses::ChartHypothesis *hypo);
- void ResetTranslationId() {
- m_translationId = 0;
- }
+ void ResetTranslationId();
Moses::OutputCollector *GetSearchGraphOutputCollector() {
return m_searchGraphOutputCollector;
diff --git a/moses-cmd/moses-cmd.xcodeproj/project.pbxproj b/moses-cmd/moses-cmd.xcodeproj/project.pbxproj
index 12afdb0e2..8fb7c5e04 100644
--- a/moses-cmd/moses-cmd.xcodeproj/project.pbxproj
+++ b/moses-cmd/moses-cmd.xcodeproj/project.pbxproj
@@ -334,7 +334,6 @@
"-ldstruct",
"-lz",
"-lirstlm",
- "-lrandlm",
);
PREBINDING = NO;
PRODUCT_NAME = "moses-cmd";
@@ -375,7 +374,6 @@
"-ldstruct",
"-lz",
"-lirstlm",
- "-lrandlm",
);
PREBINDING = NO;
PRODUCT_NAME = "moses-cmd";
@@ -408,7 +406,6 @@
"-ldstruct",
"-lz",
"-lirstlm",
- "-lrandlm",
);
PREBINDING = NO;
PRODUCT_NAME = "moses-cmd";
diff --git a/moses/src/Parameter.cpp b/moses/src/Parameter.cpp
index 23b7069bf..345ad4651 100644
--- a/moses/src/Parameter.cpp
+++ b/moses/src/Parameter.cpp
@@ -146,6 +146,7 @@ Parameter::Parameter()
AddParam("show-weights", "print feature weights and exit");
AddParam("alignment-output-file", "print output word alignments into given file");
AddParam("sort-word-alignment", "Sort word alignments for more consistent display. 0=no sort (default), 1=target order");
+ AddParam("start-translation-id", "Id of 1st input. Default = 0");
}
Parameter::~Parameter()
diff --git a/moses/src/StaticData.cpp b/moses/src/StaticData.cpp
index 8eefb3798..5c9d279fa 100644
--- a/moses/src/StaticData.cpp
+++ b/moses/src/StaticData.cpp
@@ -431,6 +431,9 @@ bool StaticData::LoadData(Parameter *parameter)
}
}
+ m_startTranslationId = (m_parameter->GetParam("start-translation-id").size() > 0) ?
+ Scan<long>(m_parameter->GetParam("start-translation-id")[0]) : 0;
+
// Read in constraint decoding file, if provided
if(m_parameter->GetParam("constraint").size()) {
if (m_parameter->GetParam("search-algorithm").size() > 0
@@ -443,8 +446,8 @@ bool StaticData::LoadData(Parameter *parameter)
InputFileStream constraintFile(m_constraintFileName);
std::string line;
-
- long sentenceID = -1;
+
+ long sentenceID = GetStartTranslationId() - 1;
while (getline(constraintFile, line)) {
vector<string> vecStr = Tokenize(line, "\t");
diff --git a/moses/src/StaticData.h b/moses/src/StaticData.h
index 0eb3c9f3b..b1d4a90a6 100644
--- a/moses/src/StaticData.h
+++ b/moses/src/StaticData.h
@@ -210,7 +210,8 @@ protected:
WordAlignmentSort m_wordAlignmentSort;
int m_threadCount;
-
+ long m_startTranslationId;
+
StaticData();
void LoadPhraseBasedParameters();
@@ -610,6 +611,9 @@ public:
int ThreadCount() const {
return m_threadCount;
}
+
+ long GetStartTranslationId() const
+ { return m_startTranslationId; }
};
}