Public Member Functions | Private Member Functions | Private Attributes | List of all members
gtsam::AllDiff Class Reference

#include <AllDiff.h>

Inheritance diagram for gtsam::AllDiff:
Inheritance graph
[legend]

Public Member Functions

 AllDiff (const DiscreteKeys &dkeys)
 Constructor. More...
 
bool ensureArcConsistency (size_t j, std::vector< Domain > &domains) const override
 
bool equals (const DiscreteFactor &other, double tol) const override
 equals More...
 
double operator() (const Values &values) const override
 Calculate value = expensive ! More...
 
DecisionTreeFactor operator* (const DecisionTreeFactor &f) const override
 Multiply into a decisiontree. More...
 
Constraint::shared_ptr partiallyApply (const Values &) const override
 Partially apply known values. More...
 
Constraint::shared_ptr partiallyApply (const std::vector< Domain > &) const override
 Partially apply known values, domain version. More...
 
void print (const std::string &s="", const KeyFormatter &formatter=DefaultKeyFormatter) const override
 print More...
 
DecisionTreeFactor toDecisionTreeFactor () const override
 Convert into a decisiontree, can be very expensive ! More...
 
- Public Member Functions inherited from gtsam::Constraint
 Constraint ()
 Default constructor for I/O. More...
 
 ~Constraint () override
 Virtual destructor. More...
 
- Public Member Functions inherited from gtsam::DiscreteFactor
 DiscreteFactor ()
 
template<typename CONTAINER >
 DiscreteFactor (const CONTAINER &keys)
 
virtual ~DiscreteFactor ()
 Virtual destructor. More...
 
virtual bool empty () const
 
- Public Member Functions inherited from gtsam::Factor
virtual ~Factor ()=default
 Default destructor. More...
 
KeyVectorkeys ()
 
iterator begin ()
 
iterator end ()
 
virtual void printKeys (const std::string &s="Factor", const KeyFormatter &formatter=DefaultKeyFormatter) const
 print only keys More...
 
Key front () const
 First key. More...
 
Key back () const
 Last key. More...
 
const_iterator find (Key key) const
 find More...
 
const KeyVectorkeys () const
 Access the factor's involved variable keys. More...
 
const_iterator begin () const
 
const_iterator end () const
 
size_t size () const
 

Private Member Functions

DiscreteKey discreteKey (size_t i) const
 

Private Attributes

std::map< Key, size_tcardinalities_
 

Additional Inherited Members

- Public Types inherited from gtsam::Constraint
typedef boost::shared_ptr< Constraintshared_ptr
 
- Public Types inherited from gtsam::DiscreteFactor
typedef Factor Base
 Our base class. More...
 
typedef boost::shared_ptr< DiscreteFactorshared_ptr
 shared_ptr to this class More...
 
typedef boost::shared_ptr< ValuessharedValues
 
typedef DiscreteFactor This
 This class. More...
 
typedef Assignment< KeyValues
 
- Public Types inherited from gtsam::Factor
typedef KeyVector::const_iterator const_iterator
 Const iterator over keys. More...
 
typedef KeyVector::iterator iterator
 Iterator over keys. More...
 
- Protected Member Functions inherited from gtsam::Constraint
 Constraint (const KeyVector &js)
 Construct n-way factor. More...
 
 Constraint (Key j)
 Construct unary factor. More...
 
 Constraint (Key j1, Key j2)
 Construct binary factor. More...
 
template<class KeyIterator >
 Constraint (KeyIterator beginKey, KeyIterator endKey)
 construct from container More...
 
- Protected Member Functions inherited from gtsam::Factor
 Factor ()
 
template<typename CONTAINER >
 Factor (const CONTAINER &keys)
 
template<typename ITERATOR >
 Factor (ITERATOR first, ITERATOR last)
 
bool equals (const This &other, double tol=1e-9) const
 check equality More...
 
- Static Protected Member Functions inherited from gtsam::Factor
template<typename CONTAINER >
static Factor FromKeys (const CONTAINER &keys)
 
template<typename ITERATOR >
static Factor FromIterators (ITERATOR first, ITERATOR last)
 
- Protected Attributes inherited from gtsam::Factor
KeyVector keys_
 The keys involved in this factor. More...
 

Detailed Description

General AllDiff constraint Returns 1 if values for all keys are different, 0 otherwise DiscreteFactors are all awkward in that they have to store two types of keys: for each variable we have a Key and an Key. In this factor, we keep the Indices locally, and the Indices are stored in IndexFactor.

Definition at line 22 of file AllDiff.h.

Constructor & Destructor Documentation

gtsam::AllDiff::AllDiff ( const DiscreteKeys dkeys)

Constructor.

Definition at line 16 of file AllDiff.cpp.

Member Function Documentation

DiscreteKey gtsam::AllDiff::discreteKey ( size_t  i) const
inlineprivate

Definition at line 26 of file AllDiff.h.

bool gtsam::AllDiff::ensureArcConsistency ( size_t  j,
std::vector< Domain > &  domains 
) const
overridevirtual

Implements gtsam::Constraint.

Definition at line 62 of file AllDiff.cpp.

bool gtsam::AllDiff::equals ( const DiscreteFactor other,
double  tol 
) const
inlineoverridevirtual

equals

Implements gtsam::DiscreteFactor.

Definition at line 41 of file AllDiff.h.

double gtsam::AllDiff::operator() ( const Values values) const
overridevirtual

Calculate value = expensive !

Implements gtsam::DiscreteFactor.

Definition at line 32 of file AllDiff.cpp.

DecisionTreeFactor gtsam::AllDiff::operator* ( const DecisionTreeFactor f) const
overridevirtual

Multiply into a decisiontree.

Implements gtsam::DiscreteFactor.

Definition at line 56 of file AllDiff.cpp.

Constraint::shared_ptr gtsam::AllDiff::partiallyApply ( const Values values) const
overridevirtual

Partially apply known values.

Implements gtsam::Constraint.

Definition at line 88 of file AllDiff.cpp.

Constraint::shared_ptr gtsam::AllDiff::partiallyApply ( const std::vector< Domain > &  domains) const
overridevirtual

Partially apply known values, domain version.

Implements gtsam::Constraint.

Definition at line 99 of file AllDiff.cpp.

void gtsam::AllDiff::print ( const std::string &  s = "",
const KeyFormatter formatter = DefaultKeyFormatter 
) const
overridevirtual

print

Reimplemented from gtsam::DiscreteFactor.

Definition at line 23 of file AllDiff.cpp.

DecisionTreeFactor gtsam::AllDiff::toDecisionTreeFactor ( ) const
overridevirtual

Convert into a decisiontree, can be very expensive !

Implements gtsam::DiscreteFactor.

Definition at line 43 of file AllDiff.cpp.

Member Data Documentation

std::map<Key,size_t> gtsam::AllDiff::cardinalities_
private

Definition at line 24 of file AllDiff.h.


The documentation for this class was generated from the following files:


gtsam
Author(s):
autogenerated on Sat May 8 2021 02:58:03