summaryrefslogtreecommitdiff
path: root/decoder/ff.h
diff options
context:
space:
mode:
authorChris Dyer <cdyer@cs.cmu.edu>2011-10-20 00:10:29 +0100
committerChris Dyer <cdyer@cs.cmu.edu>2011-10-20 00:10:29 +0100
commit64318d1ef80df243b85d5bc89023dd2f14ed6806 (patch)
tree0f3947a0a43cb855130909539e4d8657473204b5 /decoder/ff.h
parent04e38a57b19ea012895ac2efb39382c2e77833a9 (diff)
fix to prevent stale weights
Diffstat (limited to 'decoder/ff.h')
-rw-r--r--decoder/ff.h7
1 files changed, 1 insertions, 6 deletions
diff --git a/decoder/ff.h b/decoder/ff.h
index c3aa9b6d..6c22d39f 100644
--- a/decoder/ff.h
+++ b/decoder/ff.h
@@ -259,14 +259,9 @@ typedef std::vector<FFState> FFStates;
// etc. a (translation?) forest
class ModelSet {
public:
- ModelSet() : state_size_(0) {}
-
ModelSet(const std::vector<double>& weights,
const std::vector<const FeatureFunction*>& models);
- // TODO stop stupid copy
- void SetWeights(const std::vector<double>& w) { weights_ = w; }
-
// sets edge->feature_values_ and edge->edge_prob_
// NOTE: edge must not necessarily be in hg.edges_ but its TAIL nodes
// must be. edge features are supposed to be overwritten, not added to (possibly because rule features aren't in ModelSet so need to be left alone
@@ -294,7 +289,7 @@ class ModelSet {
private:
std::vector<const FeatureFunction*> models_;
- std::vector<double> weights_;
+ const std::vector<double>& weights_;
int state_size_;
std::vector<int> model_state_pos_;
};