37 void print(
const std::string&
s =
"",
42 if(!dynamic_cast<const AllDiff*>(&other))
45 const AllDiff&
f(static_cast<const AllDiff&>(other));
47 &&
std::equal(cardinalities_.begin(), cardinalities_.end(),
68 bool ensureArcConsistency(
size_t j, std::vector<Domain>& domains)
const override;
void print(const Matrix &A, const string &s, ostream &stream)
bool equals(const DiscreteFactor &other, double tol) const override
equals
Point2 operator*(double s, const Point2 &p)
multiply with scalar
static const KeyFormatter DefaultKeyFormatter
const KeyFormatter & formatter
DiscreteKey discreteKey(size_t i) const
std::pair< Key, size_t > DiscreteKey
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Point2(* f)(const Point3 &, OptionalJacobian< 2, 3 >)
specialized key for discrete variables
std::map< Key, size_t > cardinalities_
bool equal(const T &obj1, const T &obj2, double tol)
std::uint64_t Key
Integer nonlinear key type.
boost::shared_ptr< Constraint > shared_ptr
DiscreteKeys is a set of keys that can be assembled using the & operator.