Merge branch 'vaskeEmFix' of git://disco.cse.ucsc.edu/libDAI into mergeVaskeEmFix
authorJoris Mooij <joris.mooij@tuebingen.mpg.de>
Tue, 8 Sep 2009 07:57:19 +0000 (09:57 +0200)
committerJoris Mooij <joris.mooij@tuebingen.mpg.de>
Tue, 8 Sep 2009 07:57:19 +0000 (09:57 +0200)
1  2 
include/dai/factor.h
include/dai/properties.h
src/emalg.cpp

@@@ -111,8 -109,16 +111,14 @@@ template <typename T> class TFactor 
  
          /// Constructs TFactor depending on variables in ns, with values set to the TProb p
          TFactor( const VarSet& ns, const TProb<T>& p ) : _vs(ns), _p(p) {
 -#ifdef DAI_DEBUG
 -            assert( _vs.nrStates() == _p.size() );
 -#endif
 +            DAI_DEBASSERT( _vs.nrStates() == _p.size() );
          }
+         TFactor( const std::vector< Var >& vars, const std::vector< T >& p ) : _vs(vars.begin(), vars.end(), vars.size()), _p(p.size()) {
+             Permute permindex(vars);
+             for (size_t li = 0; li < p.size(); ++li) {
+                 _p[permindex.convert_linear_index(li)] = p[li];
+             }
+         }
          
          /// Constructs TFactor depending on the variable n, with uniform distribution
          TFactor( const Var& n ) : _vs(n), _p(n.states()) {}
Simple merge
diff --cc src/emalg.cpp
Simple merge