diff --git a/gtsam_unstable/discrete/AllDiff.h b/gtsam_unstable/discrete/AllDiff.h index 34e5c4700..1180abad4 100644 --- a/gtsam_unstable/discrete/AllDiff.h +++ b/gtsam_unstable/discrete/AllDiff.h @@ -72,25 +72,6 @@ class GTSAM_UNSTABLE_EXPORT AllDiff : public Constraint { /// Partially apply known values, domain version Constraint::shared_ptr partiallyApply( const Domains&) const override; - - /// Get the number of non-zero values contained in this factor. - uint64_t nrValues() const override { return 1; }; - - DiscreteFactor::shared_ptr sum(size_t nrFrontals) const override { - return toDecisionTreeFactor().sum(nrFrontals); - } - - DiscreteFactor::shared_ptr sum(const Ordering& keys) const override { - return toDecisionTreeFactor().sum(keys); - } - - DiscreteFactor::shared_ptr max(size_t nrFrontals) const override { - return toDecisionTreeFactor().max(nrFrontals); - } - - DiscreteFactor::shared_ptr max(const Ordering& keys) const override { - return toDecisionTreeFactor().max(keys); - } }; } // namespace gtsam diff --git a/gtsam_unstable/discrete/BinaryAllDiff.h b/gtsam_unstable/discrete/BinaryAllDiff.h index 0cd51ec61..e96bfdfde 100644 --- a/gtsam_unstable/discrete/BinaryAllDiff.h +++ b/gtsam_unstable/discrete/BinaryAllDiff.h @@ -96,25 +96,6 @@ class BinaryAllDiff : public Constraint { AlgebraicDecisionTree errorTree() const override { throw std::runtime_error("BinaryAllDiff::error not implemented"); } - - /// Get the number of non-zero values contained in this factor. - uint64_t nrValues() const override { return 1; }; - - DiscreteFactor::shared_ptr sum(size_t nrFrontals) const override { - return toDecisionTreeFactor().sum(nrFrontals); - } - - DiscreteFactor::shared_ptr sum(const Ordering& keys) const override { - return toDecisionTreeFactor().sum(keys); - } - - DiscreteFactor::shared_ptr max(size_t nrFrontals) const override { - return toDecisionTreeFactor().max(nrFrontals); - } - - DiscreteFactor::shared_ptr max(const Ordering& keys) const override { - return toDecisionTreeFactor().max(keys); - } }; } // namespace gtsam diff --git a/gtsam_unstable/discrete/Constraint.h b/gtsam_unstable/discrete/Constraint.h index 2d98ab40b..328fabbea 100644 --- a/gtsam_unstable/discrete/Constraint.h +++ b/gtsam_unstable/discrete/Constraint.h @@ -68,7 +68,8 @@ class GTSAM_UNSTABLE_EXPORT Constraint : public DiscreteFactor { /* * Ensure Arc-consistency by checking every possible value of domain j. * @param j domain to be checked - * @param (in/out) domains all domains, but only domains->at(j) will be checked. + * @param (in/out) domains all domains, but only domains->at(j) will be + * checked. * @return true if domains->at(j) was changed, false otherwise. */ virtual bool ensureArcConsistency(Key j, Domains* domains) const = 0; @@ -92,6 +93,25 @@ class GTSAM_UNSTABLE_EXPORT Constraint : public DiscreteFactor { return this->toDecisionTreeFactor() / df; } + /// Get the number of non-zero values contained in this factor. + uint64_t nrValues() const override { return 1; }; + + DiscreteFactor::shared_ptr sum(size_t nrFrontals) const override { + return toDecisionTreeFactor().sum(nrFrontals); + } + + DiscreteFactor::shared_ptr sum(const Ordering& keys) const override { + return toDecisionTreeFactor().sum(keys); + } + + DiscreteFactor::shared_ptr max(size_t nrFrontals) const override { + return toDecisionTreeFactor().max(nrFrontals); + } + + DiscreteFactor::shared_ptr max(const Ordering& keys) const override { + return toDecisionTreeFactor().max(keys); + } + /// @} /// @name Wrapper support /// @{ diff --git a/gtsam_unstable/discrete/Domain.h b/gtsam_unstable/discrete/Domain.h index 2372cf499..6ce846201 100644 --- a/gtsam_unstable/discrete/Domain.h +++ b/gtsam_unstable/discrete/Domain.h @@ -114,22 +114,6 @@ class GTSAM_UNSTABLE_EXPORT Domain : public Constraint { /// Partially apply known values, domain version Constraint::shared_ptr partiallyApply(const Domains& domains) const override; - - DiscreteFactor::shared_ptr sum(size_t nrFrontals) const override { - return toDecisionTreeFactor().sum(nrFrontals); - } - - DiscreteFactor::shared_ptr sum(const Ordering& keys) const override { - return toDecisionTreeFactor().sum(keys); - } - - DiscreteFactor::shared_ptr max(size_t nrFrontals) const override { - return toDecisionTreeFactor().max(nrFrontals); - } - - DiscreteFactor::shared_ptr max(const Ordering& keys) const override { - return toDecisionTreeFactor().max(keys); - } }; } // namespace gtsam diff --git a/gtsam_unstable/discrete/SingleValue.h b/gtsam_unstable/discrete/SingleValue.h index 5d4c2dca1..3df1209b8 100644 --- a/gtsam_unstable/discrete/SingleValue.h +++ b/gtsam_unstable/discrete/SingleValue.h @@ -77,25 +77,6 @@ class GTSAM_UNSTABLE_EXPORT SingleValue : public Constraint { /// Partially apply known values, domain version Constraint::shared_ptr partiallyApply( const Domains& domains) const override; - - /// Get the number of non-zero values contained in this factor. - uint64_t nrValues() const override { return 1; }; - - DiscreteFactor::shared_ptr sum(size_t nrFrontals) const override { - return toDecisionTreeFactor().sum(nrFrontals); - } - - DiscreteFactor::shared_ptr sum(const Ordering& keys) const override { - return toDecisionTreeFactor().sum(keys); - } - - DiscreteFactor::shared_ptr max(size_t nrFrontals) const override { - return toDecisionTreeFactor().max(nrFrontals); - } - - DiscreteFactor::shared_ptr max(const Ordering& keys) const override { - return toDecisionTreeFactor().max(keys); - } }; } // namespace gtsam