From f80891a7c4a2834efc476ce4d29cc6c438e567f0 Mon Sep 17 00:00:00 2001 From: graehl Date: Wed, 21 Jul 2010 20:12:44 +0000 Subject: Score::Clone() via CRTP git-svn-id: https://ws10smt.googlecode.com/svn/trunk@360 ec762483-ff6d-05da-a07a-a48fb63a330f --- decoder/cdec.cc | 14 +++++++++----- decoder/ff_fsa.h | 3 ++- decoder/sparse_vector.h | 3 +++ 3 files changed, 14 insertions(+), 6 deletions(-) (limited to 'decoder') diff --git a/decoder/cdec.cc b/decoder/cdec.cc index cc0b1434..6fb6d5a1 100644 --- a/decoder/cdec.cc +++ b/decoder/cdec.cc @@ -154,7 +154,7 @@ void InitCommandLine(int argc, char** argv, OracleBleu &ob, po::variables_map* c ob.AddOptions(&opts); po::options_description clo("Command line options"); clo.add_options() - ("config,c", po::value(), "Configuration file") + ("config,c", po::value >(), "Configuration file(s) - latest has priority") ("help,h", "Print this help message and exit") ("usage,u", po::value(), "Describe a feature function type") ("compgen", "Print just option names suitable for bash command line completion builtin 'compgen'") @@ -172,10 +172,14 @@ void InitCommandLine(int argc, char** argv, OracleBleu &ob, po::variables_map* c } ShowBanner(); if (conf.count("config")) { - const string cfg = str("config",conf); - cerr << "Configuration file: " << cfg << endl; - ifstream config(cfg.c_str()); - po::store(po::parse_config_file(config, dconfig_options), conf); + typedef vector Cs; + Cs cs=conf["config"].as(); + for (int i=0;i -struct FeatureFunctionFromFsa { +struct FeatureFunctionFromFsa : public FeatureFunction,Impl { + FeatureFunctionFromFsa( }; diff --git a/decoder/sparse_vector.h b/decoder/sparse_vector.h index 5e785210..9894d662 100644 --- a/decoder/sparse_vector.h +++ b/decoder/sparse_vector.h @@ -1,5 +1,8 @@ #ifndef _SPARSE_VECTOR_H_ #define _SPARSE_VECTOR_H_ +/* TODO: use dense_hash_map for sparsevector + use SparseVectorList (pair smallvector) for feat funcs / hypergraphs (you rarely need random access; just append a feature to the list) +*/ /* hack: index 0 never gets printed because cdyer is creative and efficient. features which have no weight got feature dict id 0, see, and the models all clobered that value. nobody wants to see it. except that vlad is also creative and efficient and stored the oracle bleu there. */ -- cgit v1.2.3