Merge branch 'eaton'
[libdai.git] / include / dai / alldai.h
index 91b4285..862bf8d 100644 (file)
@@ -33,6 +33,8 @@
 #include <dai/daialg.h>
 #include <dai/properties.h>
 #include <dai/exactinf.h>
+#include <dai/evidence.h>
+#include <dai/emalg.h>
 #ifdef DAI_WITH_BP
     #include <dai/bp.h>
 #endif
@@ -57,9 +59,6 @@
 #ifdef DAI_WITH_GIBBS
     #include <dai/gibbs.h>
 #endif
-#ifdef DAI_WITH_BP_DUAL
-    #include <dai/bp_dual.h>
-#endif
 #ifdef DAI_WITH_CBP
     #include <dai/cbp.h>
 #endif
@@ -78,6 +77,14 @@ namespace dai {
 InfAlg *newInfAlg( const std::string &name, const FactorGraph &fg, const PropertySet &opts );
 
 
+/// Constructs a new approximate inference algorithm.
+/** \param nameOpts The name and options of the approximate inference algorithm (should be in the format "name[opts]").
+ *  \param fg The FactorGraph that the algorithm should be applied to.
+ *  \return Returns a pointer to the new InfAlg object; it is the responsibility of the caller to delete it later.
+ */
+InfAlg *newInfAlgFromString( const std::string &nameOpts, const FactorGraph &fg );
+
+
 /// Contains the names of all approximate inference algorithms compiled into libDAI.
 static const char* DAINames[] = {
     ExactInf::Name,