21#include <gtsam_unstable/dllexport.h>
23#include <boost/assign.hpp>
35 typedef boost::shared_ptr<Constraint>
shared_ptr;
49 template <
class KeyIterator>
72 virtual bool ensureArcConsistency(
size_t j,
73 std::vector<Domain>& domains)
const = 0;
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
Definition: Key.h:86
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:69
An assignment from labels to value index (size_t).
Definition: Assignment.h:34
Base class for discrete probabilistic factors The most general one is the derived DecisionTreeFactor.
Definition: DiscreteFactor.h:34
boost::shared_ptr< DiscreteFactor > shared_ptr
shared_ptr to this class
Definition: DiscreteFactor.h:40
Base class for discrete probabilistic factors The most general one is the derived DecisionTreeFactor.
Definition: Constraint.h:33
~Constraint() override
Virtual destructor.
Definition: Constraint.h:61
Constraint(const KeyVector &js)
Construct n-way factor.
Definition: Constraint.h:39
Constraint()
Default constructor for I/O.
virtual shared_ptr partiallyApply(const Values &) const =0
Partially apply known values.
Constraint(Key j1, Key j2)
Construct binary factor.
Definition: Constraint.h:45
Constraint(KeyIterator beginKey, KeyIterator endKey)
construct from container
Definition: Constraint.h:50
virtual shared_ptr partiallyApply(const std::vector< Domain > &) const =0
Partially apply known values, domain version.
Constraint(Key j)
Construct unary factor.
Definition: Constraint.h:42