summaryrefslogtreecommitdiff
path: root/vest/ter.cc
diff options
context:
space:
mode:
authorgraehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f>2010-07-19 23:40:30 +0000
committergraehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f>2010-07-19 23:40:30 +0000
commit190ad8ae1e131ac0e29ff975b0d6502f3cc57af6 (patch)
tree7016b7671bfa385a1b3e4a8ab4c2a2544e5208df /vest/ter.cc
parent7d31056d098694b85847d9f75d3870913661e73b (diff)
fixed oracle generate, detailed score info with --verbose
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@329 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'vest/ter.cc')
-rw-r--r--vest/ter.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/vest/ter.cc b/vest/ter.cc
index b4ebc4f5..8c8494ad 100644
--- a/vest/ter.cc
+++ b/vest/ter.cc
@@ -9,7 +9,7 @@
#include <set>
#include <valarray>
#include <boost/functional/hash.hpp>
-
+#include <stdexcept>
#include "tdict.h"
const bool ter_use_average_ref_len = true;
@@ -432,8 +432,12 @@ class TERScore : public Score {
void ScoreDetails(string* details) const;
void PlusPartialEquals(const Score& rhs, int oracle_e_cover, int oracle_f_cover, int src_len){}
void PlusEquals(const Score& delta, const float scale) {
- stats += static_cast<const TERScore&>(delta).stats;
- }
+ if (scale==1)
+ stats += static_cast<const TERScore&>(delta).stats;
+ if (scale==-1)
+ stats -= static_cast<const TERScore&>(delta).stats;
+ throw std::runtime_error("TERScore::PlusEquals with scale != +-1");
+ }
void PlusEquals(const Score& delta) {
stats += static_cast<const TERScore&>(delta).stats;
}