#include <DiscreteValues.h>
Public Types | |
using | Base = Assignment< Key > |
Public Member Functions | |
Standard Constructors | |
DiscreteValues ()=default | |
DiscreteValues (const Base &a) | |
DiscreteValues (std::initializer_list< std::pair< const Key, size_t >> init) | |
Assignment ()=default | |
Assignment (std::initializer_list< std::pair< const L, size_t >> init) | |
Testable | |
void | print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const |
print required by Testable. More... | |
bool | equals (const DiscreteValues &x, double tol=1e-9) const |
equals required by Testable for unit testing. More... | |
![]() | |
Assignment ()=default | |
Assignment (std::initializer_list< std::pair< const Key, size_t >> init) | |
bool | equals (const Assignment &other, double tol=1e-9) const |
void | print (const std::string &s="Assignment: ", const std::function< std::string(Key)> &labelFormatter=&DefaultFormatter) const |
Standard Interface | |
std::pair< iterator, bool > | insert (const value_type &value) |
DiscreteValues & | insert (const std::pair< Key, size_t > &assignment) |
Insert key-assignment pair. More... | |
DiscreteValues & | insert (const DiscreteValues &values) |
Insert all values from another DiscreteValues object. More... | |
DiscreteValues & | update (const DiscreteValues &values) |
Update values with corresponding keys from another DiscreteValues object. More... | |
bool | contains (Key key) const |
Check if the DiscreteValues contains the given key. More... | |
DiscreteValues | filter (const DiscreteKeys &keys) const |
Filter values by keys. More... | |
DiscreteKeys | missingKeys (const DiscreteKeys &keys) const |
Return the keys that are not present in the DiscreteValues object. More... | |
std::ostream & | operator<< (std::ostream &os, const DiscreteValues &x) |
ostream operator: More... | |
static std::vector< DiscreteValues > | CartesianProduct (const DiscreteKeys &keys) |
Return a vector of DiscreteValues, one for each possible combination of values. More... | |
Wrapper support | |
using | Names = std::map< Key, std::vector< std::string > > |
Translation table from values to strings. More... | |
std::string | markdown (const KeyFormatter &keyFormatter=DefaultKeyFormatter, const Names &names={}) const |
Output as a markdown table. More... | |
std::string | html (const KeyFormatter &keyFormatter=DefaultKeyFormatter, const Names &names={}) const |
Output as a html table. More... | |
static std::string | Translate (const Names &names, Key key, size_t index) |
Translate an integer index value for given key to a string. More... | |
Additional Inherited Members | |
![]() | |
static std::vector< AssignmentType > | CartesianProduct (const std::vector< std::pair< Key, size_t >> &keys) |
Get Cartesian product consisting all possible configurations. More... | |
A map from keys to values
Definition at line 34 of file DiscreteValues.h.
using gtsam::DiscreteValues::Base = Assignment<Key> |
Definition at line 36 of file DiscreteValues.h.
using gtsam::DiscreteValues::Names = std::map<Key, std::vector<std::string> > |
Translation table from values to strings.
Definition at line 158 of file DiscreteValues.h.
|
default |
|
inlineexplicit |
Definition at line 46 of file DiscreteValues.h.
|
inline |
Definition at line 49 of file DiscreteValues.h.
|
default |
|
inline |
Definition at line 58 of file Assignment.h.
|
inlinestatic |
Return a vector of DiscreteValues, one for each possible combination of values.
keys | The keys to generate the Cartesian product for. |
Definition at line 148 of file DiscreteValues.h.
|
inline |
Check if the DiscreteValues contains the given key.
key | The key to check for. |
Definition at line 110 of file DiscreteValues.h.
bool DiscreteValues::equals | ( | const DiscreteValues & | x, |
double | tol = 1e-9 |
||
) | const |
equals required by Testable for unit testing.
Definition at line 51 of file DiscreteValues.cpp.
|
inline |
Filter values by keys.
keys | The keys to filter by. |
Definition at line 118 of file DiscreteValues.h.
string DiscreteValues::html | ( | const KeyFormatter & | keyFormatter = DefaultKeyFormatter , |
const Names & | names = {} |
||
) | const |
Output as a html table.
keyFormatter | function that formats keys. |
names | translation table for values. |
Definition at line 123 of file DiscreteValues.cpp.
DiscreteValues & DiscreteValues::insert | ( | const DiscreteValues & | values | ) |
Insert all values from another DiscreteValues object.
values | The DiscreteValues object containing values to insert. |
std::invalid_argument | if any keys to be inserted are already used. |
Definition at line 74 of file DiscreteValues.cpp.
DiscreteValues & DiscreteValues::insert | ( | const std::pair< Key, size_t > & | assignment | ) |
Insert key-assignment pair.
assignment | The key-assignment pair to insert. |
std::invalid_argument | if any keys to be inserted are already used. |
Definition at line 62 of file DiscreteValues.cpp.
|
inline |
Definition at line 71 of file DiscreteValues.h.
string DiscreteValues::markdown | ( | const KeyFormatter & | keyFormatter = DefaultKeyFormatter , |
const Names & | names = {} |
||
) | const |
Output as a markdown table.
keyFormatter | function that formats keys. |
names | translation table for values. |
Definition at line 106 of file DiscreteValues.cpp.
|
inline |
Return the keys that are not present in the DiscreteValues object.
keys | The keys to check for. |
Definition at line 133 of file DiscreteValues.h.
void DiscreteValues::print | ( | const std::string & | s = "" , |
const KeyFormatter & | keyFormatter = DefaultKeyFormatter |
||
) | const |
print required by Testable.
Definition at line 43 of file DiscreteValues.cpp.
Translate an integer index value for given key to a string.
Definition at line 96 of file DiscreteValues.cpp.
DiscreteValues & DiscreteValues::update | ( | const DiscreteValues & | values | ) |
Update values with corresponding keys from another DiscreteValues object.
values | The DiscreteValues object containing values to update. |
std::out_of_range | if any keys in values are not present in this object. |
Definition at line 82 of file DiscreteValues.cpp.
|
friend |
ostream operator:
Definition at line 37 of file DiscreteValues.cpp.