diff --git a/gtsam/discrete/discrete.i b/gtsam/discrete/discrete.i index 2b8881729..892df4c73 100644 --- a/gtsam/discrete/discrete.i +++ b/gtsam/discrete/discrete.i @@ -168,6 +168,25 @@ virtual class DiscreteDistribution : gtsam::DiscreteConditional { std::vector pmf() const; }; +#include +virtual class TableFactor : gtsam::DiscreteFactor { + TableFactor(); + TableFactor(const gtsam::DiscreteKeys& keys, + const gtsam::TableFactor& potentials); + TableFactor(const gtsam::DiscreteKeys& keys, std::vector& table); + TableFactor(const gtsam::DiscreteKeys& keys, string spec); + TableFactor(const gtsam::DiscreteKeys& keys, + const gtsam::DecisionTreeFactor& dtf); + TableFactor(const gtsam::DecisionTreeFactor& dtf); + + void print(string s = "TableFactor\n", + const gtsam::KeyFormatter& keyFormatter = + gtsam::DefaultKeyFormatter) const; + + double evaluate(const gtsam::DiscreteValues& values) const; + double error(const gtsam::DiscreteValues& values) const; +}; + #include virtual class TableDistribution : gtsam::DiscreteConditional { TableDistribution(); @@ -175,7 +194,7 @@ virtual class TableDistribution : gtsam::DiscreteConditional { TableDistribution(const gtsam::DiscreteKey& key, std::vector spec); TableDistribution(const gtsam::DiscreteKeys& keys, std::vector spec); TableDistribution(const gtsam::DiscreteKeys& keys, string spec); - TableDistribution(const gtsam::DiscreteKey& keys, string spec); + TableDistribution(const gtsam::DiscreteKey& key, string spec); TableDistribution(const gtsam::TableFactor& joint, const gtsam::TableFactor& marginal); TableDistribution(const gtsam::TableFactor& joint,