11 #include <gtsam_unstable/discrete/BinaryAllDiff.h> 20 std::map<Key, size_t> cardinalities_;
33 DefaultKeyFormatter)
const override;
37 if (!dynamic_cast<const AllDiff*>(&other))
40 const AllDiff& f(static_cast<const AllDiff&>(other));
41 return cardinalities_.size() == f.cardinalities_.size() &&
42 std::equal(cardinalities_.begin(), cardinalities_.end(),
43 f.cardinalities_.begin());
62 bool ensureArcConsistency(
Key j, Domains* domains)
const override;
65 Constraint::shared_ptr partiallyApply(
const DiscreteValues&)
const override;
68 Constraint::shared_ptr partiallyApply(
69 const Domains&)
const override;
bool equals(const DiscreteFactor &other, double tol) const override
equals
Definition: AllDiff.h:36
Definition: DecisionTreeFactor.h:44
Definition: Constraint.h:35
Point2 operator*(double s, const Point2 &p)
multiply with scalar
Definition: Point2.h:52
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
Definition: DiscreteValues.h:34
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Definition: Key.h:35
Definition: chartTesting.h:28
specialized key for discrete variables
Definition: DiscreteFactor.h:38
std::pair< Key, size_t > DiscreteKey
Definition: DiscreteKey.h:38
bool equal(const T &obj1, const T &obj2, double tol)
Definition: Testable.h:85
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:102
DiscreteKeys is a set of keys that can be assembled using the & operator.
Definition: DiscreteKey.h:41